Apparatuses, Methods and Systems for Information Querying and Serving on the Internet Based on Profiles

ABSTRACT

The disclosure details the implementation of apparatuses, methods, and systems for information querying and serving on the internet based on profiles. Information and/or advertisement providers may use a code triggered information server to serve context, demographic, and behavior targeted information to users on the internet. Users, in turn, trigger the provision of information by scanning or observing codes or information, or by selecting web links. The triggers, together with geographic, temporal, and user-specific information, are obtained by the server that receives, processes, and records the message. Based on these messages and a user profile—which may include continuously updated user-specific behavior information, situational and ambient information, an accumulated history of trigger messages, and integration with outside database information—the server selects information to serve to a user on the internet from an information base. For example, a user with a recorded history of interest in coffee products may be served an advertisement for a nearby coffeeshop while browsing the web on his/her PDA. In one embodiment, information may also be served to users on the internet based solely on the user profiles, and without any initiating trigger. This is based on user trajectories or web-surfing habits deduced from the accumulated history of triggers. For example, a user known to routinely visit a music vendor website near the same time each day may be served an advertisement for the latest top-selling CD shortly before that time.

PRIORITY CLAIMS AND RELATED APPLICATIONS

This disclosure describes inventive aspects of at least eight distinctinventions, including:

information querying and serving on mobile devices based on ambientconditions (with a suggested Class/Subclass of 707/10);

code-triggered information querying and serving on mobile devices basedon profiles (with a suggested Class/Subclass of 709/206);

anticipatory information querying and serving on mobile devices based onprofiles (with a suggested Class/Subclass of 709/217);

coordinating personnel based on profiles (with a suggestedClass/Subclass of 705/9);

determining and announcing proximity between trajectories (with asuggested Class/Subclass of 701/302);

information querying and serving in a virtual world based on profiles(with a suggested Class/Subclass of 463/42);

information querying and serving on the internet based on profiles (witha suggested Class/Subclass of 705/14); and ambiguous code-triggeredinformation querying and serving on mobile devices (with a suggestedClass/Subclass of 235/494).

The instant application details matter directed to information queryingand serving on the internet based on profiles (suggested class/subclass:705/14). However, in order to develop a reader's understanding of theinvention(s), the descriptions of the other invention(s) have beencompiled into a single disclosure to illustrate and clarify how aspectsof these inventions operate independently, interoperate as betweenindividual inventions, and/or cooperate collectively. The disclosuregoes on to further describe the interrelations and synergies as betweenany of the various inventions within the context of an overarchinginventive system; all of which is to further ensure compliance with 35U.S.C. § 112.

Applicants hereby claim priority under 35 USC §119 for U.S. provisionalpatent application Ser. No. 60/827,381 filed Sep. 28, 2006, entitled“APPARATUSES, METHODS AND SYSTEMS FOR CODE TRIGGERED INFORMATIONQUERYING AND SERVING,” attorney docket no. 17896-004PV; U.S. provisionalpatent application Ser. No. 60/828,959 filed Oct. 10, 2006, entitled“METHOD FOR INFORMATION QUERYING AND SERVING ON MOBILE DEVICES BASED ONAMBIENT CONDITIONS,” attorney docket no. 17896-004PV1; U.S. provisionalpatent application Ser. No. 60/828,962 filed Oct. 10, 2006, entitled“METHOD FOR CODE-TRIGGERED INFORMATION QUERYING AND SERVING ON MOBILEDEVICES BASED ON PROFILES,” attorney docket no. 17896-004PV2; U.S.provisional patent application Ser. No. 60/828,970 filed Oct. 10, 2006,entitled “METHOD FOR ANTICIPATORY INFORMATION QUERYING AND SERVING ONMOBILE DEVICES BASED ON PROFILES,” attorney docket no. 17896-004PV3;U.S. provisional patent application Ser. No. 60/828,969 filed Oct. 10,2006, entitled “METHOD FOR COORDINATING PERSONNEL BASED ON PROFILES,”attorney docket no. 17896-004PV4; U.S. provisional patent applicationSer. No. 60/828,967 filed Oct. 10, 2006, entitled “METHOD FORDETERMINING AND ANNOUNCING PROXIMITY BETWEEN TRAJECTORIES,” attorneydocket no. 17896-004PV5; U.S. provisional patent application Ser. No.60/828,968 filed Oct. 10, 2006, entitled “METHOD FOR INFORMATIONQUERYING AND SERVING IN A VIRTUAL WORLD BASED ON PROFILES,” attorneydocket no. 17896-004PV6; and U.S. provisional patent application Ser.No. 60/828,965 filed Oct. 10, 2006, entitled “METHOD FOR INFORMATIONQUERYING AND SERVING ON THE INTERNET BASED ON PROFILES,” attorney docketno. 17896-004PV7.

This disclosure is also related to co-pending Patent Cooperation Treatypatent application serial no. PCT/______ filed Sep. 28, 2007, entitled“APPARATUS, METHOD AND SYSTEM FOR CODE TRIGGERED INFORMATION QUERYINGAND SERVING,” attorney docket no. 17896-004PC; U.S. non-provisionalpatent application Ser. No. ______ filed Sep. 28, 2007, entitled“APPARATUSES, METHODS AND SYSTEMS INFORMATION QUERYING AND SERVING BASEDON AMBIENT CONDITIONS,” attorney docket no. 17896-004US1; U.S.non-provisional patent application Ser. No. ______ filed Sep. 28, 2007,entitled “APPARATUSES, METHODS AND SYSTEMS FOR CODE-TRIGGEREDINFORMATION QUERYING AND SERVING ON MOBILE DEVICES BASED ON PROFILES,”attorney docket no. 17896-004US2; U.S. non-provisional patentapplication Ser. No. ______ filed Sep. 28, 2007, entitled “APPARATUSES,METHODS AND SYSTEMS FOR ANTICIPATORY INFORMATION QUERYING AND SERVING ONMOBILE DEVICES BASED ON PROFILES,” attorney docket no. 17896-004US3;U.S. non-provisional patent application Ser. No. ______ filed Sep. 28,2007, entitled “APPARATUSES, METHODS AND SYSTEMS FOR COORDINATINGPERSONNEL BASED ON PROFILES,” attorney docket no. 17896-004US4; U.S.non-provisional patent application Ser. No. ______ filed Sep. 28, 2007,entitled “APPARATUSES, METHODS AND SYSTEMS FOR DETERMINING ANDANNOUNCING PROXIMITY BETWEEN TRAJECTORIES,” attorney docket no.17896-004US5; U.S. non-provisional patent application Ser. No. ______filed Sep. 28, 2007, entitled “APPARATUSES, METHODS AND SYSTEMS FORINFORMATION QUERYING AND SERVING IN A VIRTUAL WORLD BASED ON PROFILES,”attorney docket no. 17896-004US6; and U.S. non-provisional patentapplication Ser. No. ______ filed Sep. 28, 2007, entitled “APPARATUSES,METHODS AND SYSTEMS FOR AMBIGUOUS CODE-TRIGGERED INFORMATION QUERYINGAND SERVING ON MOBILE DEVICES,” attorney docket no. 17896-004US8.

The entire contents of the aforementioned applications are hereinexpressly incorporated by reference.

FIELD

The present disclosure is directed generally to apparatuses, methods,and systems for marketing and information dissemination, and moreparticularly, to apparatuses, methods and systems for informationquerying and serving on the internet based on profiles.

BACKGROUND

In recent years, the proliferation of mobile consumer electronic andwireless networking technology has allowed the development of a host ofbusiness methods that incorporate Global Positioning System (GPS)location awareness for mobile devices. In addition, various advertisingsystems, such as Google's AdSense, allow advertisers to placeadvertisements in contexts with which consumers are interested.Information encoding symbologies, such as barcodes, data matrices, orRadio Frequency Identification (RFID) tags, as well as the technology todecode them have come about.

SUMMARY

The present disclosure is directed to apparatuses, methods and systemsfor information querying and serving on the internet based on profiles.Existing advertising schemes fail to take full advantage of the trackingand context targeting possibilities enabled by the present disclosure.In particular, they do not allow information and/or advertisementserving on the internet that is targeted to the individual consumer'scharacteristic profile, behavioral patterns, and present contextualsurroundings either in real space of cyberspace. For example, theycannot supply web-based advertisements on an internet enabled mobiledevice for goods and services located near a mobile user that are alsochosen based on the user's behavioral patterns and stated interests. Assuch, this disclosure details a code triggered information server (CTIS)that delivers information on the internet based on user activities, suchas may be registered by codes scanned by mobile devices or website linksselected on a computer, as well as user characteristics and anaccumulated history of user activities. In one embodiment, the codetriggered information server allows advertisers to supply productinformation on websites to the consumers who would be most interested insuch ads; this may be achieved by the CTIS selecting advertising contentbased on a combination of the context of the code that the consumerscanned or the web link that the user selected, the consumer's statedinterests as recorded in his or her user profile, the consumer'sdemographic profile, situational information, and a record of scannedcodes or web links; these factors can be analyzed and employed by theCTIS for both user tracking and behavioral profiling/targeting. Forexample, a user with a stated interest in running and a recent patternof scanning codes related to shoes may be served a web-basedadvertisement on his/her internet-enabled mobile device for a newrunning shoe being sold at a nearby shoe store. In another example, auser profiled to be a teenager and having a pattern of browsing websitesrelated to comic books may be served a web-based ad for the newest comicbook themed movie when he/she visits a movie-listings website.

As the first code-triggered system for serving Ads on the internet withgeographic, context, and behavioral specificity based on user profiles,the CTIS is designed to deliver targeted Ads to users on the internetwhile simultaneously providing detailed customer tracking information toAd providers. The CTIS moves beyond contextual advertising schemes; itsupplies Ad providers with greater precision and focus to provideconsumers with the information that is most relevant to their interests,behavioral patterns, and space-time and/or cyberspace-time trajectoriesto maximize the possibility of consummating a transaction. In oneembodiment, the CTIS is designed to allow advertisers to place ads onthe internet at specific times of the day and/or to be triggered atspecific geographic locations such as to increase the likelihood ofgarnering the attention of prospective customers. In another embodimentthe CTIS is designed to allow advertisers to obtain better rates ofcustomer acquisition by supplying Ads on the internet for goods andservices sold on websites that a prospective customer is likely to visitnext. In another embodiment, the CTIS yields time and location resolvedrecords of scans for the determination of coded advertisementvisibility. In another embodiment, the CTIS provides rapid and evolvinggeographic and historical statistical profiling of user interest,web-surfing habits, and coded advertisement quality.

From the user point of view, the CTIS provides a mechanism by which, inexchange for officially registering interest and providing basicinformation, he/she can receive the most targeted solicitations,enhanced content, sales offers/coupons, and/or the like. User benefitsinclude: relevant and targeted advertising; mobile context specificinformation; contiguous location and/or immediate event information;coupons and/or offers for many types of goods and services; and/or thelike.

At the same time, the system grants the advertiser a powerful trackingtool, to monitor behavioral patterns of consumers on individual,demographic, temporal, and geographic scales. This allows, among otherthings, the deployment of anticipatory advertising: servingadvertisements to users in anticipation of their locations and/orpotential interests based on an accumulated history of user trackingdata. Other Ad provider benefits include: compilation of highly specificcustomer tracking information, including customer space-timetrajectories; location and/or time specific advertising; highly flexiblecoded advertising placement; quick and updated determination of codedadvertisement visibility; and/or the like.

Of benefit to both users and Ad providers is the fact that users improvethe specificity of their Reply Messages with each successive scan, sinceeach scan further refines the contents of the user profile. Users thushave a motivation to scan as many codes as possible related to subjectsof interest and will thereby be exposed to more advertisements than inmore traditional, passive advertising and marketing schemes.

Ad providers participate by contributing content to an Information Basethat categorizes and labels that content under a number ofconsiderations, such as subject matter, geographic and temporalidentity, demographic specificity, and/or the like. Elements of theInformation Base can then be compared via these labels with comparablelabels found in a database of user profiles in order to match contentwith users via subject, location, time, demographic category, and/or thelike. As such, the CTIS efficiently facilitates commerce by providingadvertising to consumers with highly tailored specificity.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying appendices and/or drawings illustrate variousnon-limiting, example, inventive aspects in accordance with the presentdisclosure:

FIGS. 1 a-b show combined logic and data flow block diagram illustratinga general overview of embodiments of the CTIS;

FIG. 2 shows a particular, exemplary embodiment of the CTIS, whereincontextual information and advertising is served to the user related toa news article in the business section of a media publication;

FIG. 3 shows user trajectories through a network of Ad provider zones;

FIG. 4 shows an embodiment of the web interface for user registration;

FIGS. 5 a-c show three types of 2D barcodes that may be employed withinthe CTIS and logic flow for code enhancement in one embodiment of CTISoperation;

FIG. 6 shows an illustration of one embodiment of the Scan Message datastructure;

FIG. 7 shows an illustration of one embodiment of the use profile datastructure;

FIG. 8 shows an illustration of one embodiment of the Information Base(Ad) data structure;

FIG. 9 shows a logic flow diagram of one embodiment of the user profilequery heuristic;

FIG. 10 shows an exemplary histogram of Ad provider zone breaches;

FIGS. 11 a-d show some embodiments of systems for selectingnon-triggered information to serve to users;

FIGS. 12 a-b show examples of coupons provided by the CTIS;

FIG. 13 shows a combined logic and data flow block diagram for anembodiment of the CTIS wherein contextual Ads are replaced by Ads basedon ambient conditions;

FIG. 14 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which allergy medicationAds are served in response to a high pollen count;

FIG. 15 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which sunscreen Ads areserved in response to heat and high UV levels;

FIG. 16 shows a combined logic and data flow block diagram for anembodiment of the CTIS wherein the selection of contextual Ads isinfluenced by ambient conditions;

FIG. 17 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for a luxuryconvertible is served based on warm weather conditions, a scanned code,and the user profile;

FIG. 18 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for Floridatravel is served based on cold/rainy weather conditions, a scanned code,and the user profile;

FIG. 19 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for an icecream shop is served based on warm weather conditions, a scanned code,and the user profile;

FIG. 20 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for ponchosand umbrellas is served based on rainy weather conditions, a scannedcode, and the user profile;

FIG. 21 shows a combined logic and data flow block diagram for anembodiment of the CTIS wherein Ads are served to a User Agent device;

FIG. 22 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for a sportsteam's season tickets is served along with a pay-per-view event supplieddirectly to a user's cable box;

FIG. 23 shows a combined logic and data flow block diagram for aparticular exemplary embodiment of the CTIS in which an Ad for virusscan subscription software is served; and

FIG. 24 shows a computer systemization of the CTIS.

The leading number of each reference number within the drawingsindicates the figure in which that reference number is introduced and/ordetailed. As such, a detailed discussion of reference number 101 wouldbe found and/or introduced in FIG. 1. Reference number 201 is introducedin FIG. 2, etc.

DETAILED DESCRIPTION

In one embodiment, the disclosed CTIS employs two basic actors: (i) auser (100 a) capable of registering interest in an activity,transmitting and receiving data, and displaying information; and (ii) aserver (101) capable of communicating with the user, storing/updatinguser profiles, and selecting information to serve to the user. Inaddition to the two basic actors, the CTIS enables the creation of twotypes of transactional articles: i) Scan Messages (115) and ii) ReplyMessages (145). The CTIS provides context-specific Reply Messages inresponse to Scan Messages, which are prepared in response to theregistration of activity interest by the user, in order to supplyinformation and/or advertising to the user. The CTIS generates ReplyMessages by processing Scan Message content with user profileinformation, containing basic profiling data as well as a history ofScan Messages supplied by a given user. As such, Reply Messages aretransactional articles that heighten a provider's opportunity to supplyrelevant and targeted information and/or advertising to the user that isboth context and user specific. Without loss of generality, we willheretofore refer to the information and/or advertising content of ReplyMessages as “Ads”. The CTIS may also elect to send context anduser-specific Reply Messages based solely on the user profile, withoutthe user having recently registered activity interest, if it isdetermined from the user's profile, particularly the history of ScanMessages, that a particular Ad is appropriate.

In one embodiment, users of the CTIS scan codes to register interest andthe CTIS acts as a portal for consumers to access informationsupplemental to the context in which the codes are found. Users may scancodes found in media publications, on billboards or signs, on consumerproducts or packages, on websites or television screens, and/or thelike. In doing so, the users may identify themselves via anidentification code specific to the mobile device and service accountwith which the scan is made. At the same time, the scanned code can berecorded, as well as the time of day and user location; such informationmay form the basis of consumer profiles that may be saved by the CTIS.As these scans are indicative of interest in various subjects, goods,and/or services, they may serve as a basis for an individual customertracking system. As such, advertisers can finely tune and efficientlytailor their efforts towards achieving maximum return on the advertisingexpenditure.

Code Triggered Information Server Basic Overview

FIG. 1 a shows a combined logic and data flow block diagram illustratinga general overview of the CTIS in one embodiment. The CTIS may beconfigured so that a user (100 a) may scan a digital code (105) with ascanning device (100 b), as for example by using a cell phone camera toscan and/or take a picture of a barcode, 2d code, matrix code, datamatrix, QR code, or other such symbology. An example of a mobile deviceand software capable of such code capture is the Nokia 6600 cellulartelephone equipped with ConnexTo software. Alternatively, the CTIS maybe triggered by the user selecting an internet link (such as on aninternet enabled mobile device), by making decisions within a virtualworld (such as a massively multiplayer online game), and/or the like.Without loss of generality, all such forms of interest-registering CTIStriggering will be referred to as “code scanning”. The time and location(as determined by GPS, GPRS, or other such geo-positioning technologies)of the mobile device are determined (110), and a Scan Message (115) isgenerated containing a user identification (ID), a hardware ID thatidentifies the type of mobile device being used, a geocode (location ofthe device), a timestamp, and the scanned code (see. FIG. 4 anddiscussion of Scan Message below). Additional user-input information mayalso be supplied at this point. The Scan Message is packaged and sent(120) to a server (101) that receives and recognizes it (125). Theuser's profile, specific to the supplied user ID, is updated with thenew Scan Message (i.e., it is added as a transaction to their profiletransaction history) and queried (130) for information to use in thepreparation of a Reply Message (140) that is also based on the contentof the current Scan Message. The server selects (135) the Ad content(see FIG. 7) of the Reply Message (145) from an Information Base andsends it to the user's mobile display device, which displays thepertinent content to the user (150).

In one implementation, the Scan Message and/or scanned code may be sentto the server (101) by a Multimedia Messaging Service (MMS) protocol. Inother implementations, a wide variety of other communication protocolsmay be employed, including but not limited to: Short Messaging Service(SMS), instant messaging, web browser based messaging, email, EnhancedMessaging System (EMS), TCP/IP, WAP, and/or the like.

In one implementation, the server (101) may be addressed by a shortcode, short numbers, Common Short Code (CSC), and/or the like forsending the Scan Message and/or scanned code. For example, a short codemay appear alongside a code in a print publication, and a user may beinformed that the scanned code should be sent to the indicated shortcode number in order to retrieve a Reply Message, advertisement, coupon,and/or the like. In other implementations, other addressing means may beemployed, such as an ordinary telephone number, an email address, auniversal resource locater (URL), and/or the like. In anotherimplementation, the short code and/or other server address may beencoded within part of the code itself. When the user scans the codewith his or her mobile device, the code may be partially decoded by theclient device to extract the address and automatically send the rest ofthe code thereto.

FIG. 1 b shows an implementation of combined logic and data flow inanother embodiment of CTIS operation. A code (155) is scanned by acamera phone (156), and the resulting image content is converted to anMMS format to be sent via short code (157) through a gateway provider(158) to the CTIS (159) server. At the server, the image information maybe enhanced, manipulated, and/or otherwise processed (160) so as to aidin determining the appropriate content to serve in response. Afterenhancement, the image content is read (161) and the content and formatfor the appropriate response is determined (162) (see, e.g., FIGS.9-11). A response message is formed in MMS format (163) and is sent(164) back to a gateway provider (158) to be served to the user's cameraphone (156).

In an alternative implementation, the scanned code may be directlydecoded on the client mobile device instead of on the server. Thedecoded content may then be converted to MMS format and sent via shortcode to the server in order to retrieve the appropriate contentassociated with the code. That content may be returned from the serverto the client mobile device by means of an MMS protocol as well.

For illustration, the CTIS is shown in FIG. 2 for a particular,exemplary embodiment: providing targeted and contextual information andadvertising to the user related to a news article. Here, a user employsa cell phone to scan a code associated with an article in the Businesssection of a media publication (207), such as by using the phone's builtin camera to photograph a 2D matrix code (e.g., QR code). The locationof the scan (San Francisco, Calif.) is determined by the phone's builtin GPS receiver (212), and this location is incorporated as a geocode,along with the user ID, the hardware ID of the particular type of device(e.g., cell phone) used, the time, and the code content, into a ScanMessage. This is sent to a server via the cell phone's data connection(e.g., wireless internet systems such as 1xEV-DO), and the serverqueries a database of user profiles based on the supplied user ID inorder to update the appropriate user profile with the content of thecurrent Scan Message and to determine what, if any, information in theuser profile may be relevant to the preparation of the current ReplyMessage. Here, the server recognizes that the user is 55 years of ageand has recently been scanning articles and/or ads related toinvestments and retirement planning (232). In one embodiment, the usercan supply a list of interests to be considered in addition to thoseculled from their scan history. The server selects the appropriate Adcontent to include in the Reply Message, comprised in this case of linksto Finance headlines, quick links to saved stock quotes (237), and acontextual brokerage advertisement (238), including information onbranch locations in San Francisco (212) near the user. This reply issent by the server to the user's mobile device which displays theappropriate message content.

In one embodiment, the CTIS can serve information to the user based onthe collected knowledge of user space-time trajectories contained in theuser profile, without the need for any initiating code scan. Thisembodiment is best illustrated by example, as drawn in FIG. 3. Here, auser rides a bus from home (300) to work (310) on four of the last fivedays, and takes a different bus to his doctor's office (330) on theremaining day. The space-time trajectories for the four work trips (305)and the one doctor trip (325) are determined by codes that the userscans with his cell phone from a newspaper during the bus rides. In thisexample, the user is assumed to scan a code every ten minutes startingat 7:30 AM until the destination is reached, and the geographic locationof each scan is indicated by the position of the timestamp along eachtrajectory. In one embodiment, tracking occurs without scanning, simplyby having the device send geocodes and timestamps by itself. Along theway to his destinations, the user passes a number of Ad providers(marked with X's) with Ad content in the CTIS Information Base, withdotted circles indicating the locus of points that are a distance of twomiles from each provider. One Ad provider in particular (315), a gourmetcoffee shop, is within two miles (320) of the user's space-timetrajectory at 7:50 AM in four of the last five days. The user's profilealso lists “coffee” as an interest, both based on user specificationsduring registration and on the user's advertisement and article scanrecord. Consequently, on the sixth day, the server supplies the userwith an advertisement for the coffee shop (315) at 7:45 AM

Code Triggered Information Server Detailed Overview

User and Ad provider participation

The CTIS is enabled by the participation of Ad providers and users. Inone embodiment, Ad providers supply Ads for storage on the CTIS server.In an alternative embodiment, the Ads are stored on third party serversthat are referenced by the CTIS server. The user experience may beenhanced by the incorporation of personal preferences and demographicinformation to optimize the targeting of Ad content. Consequently, oneembodiment would incorporate a user registration procedure. Users mayregister for the CTIS via the internet, telephone, postal mail, and/orthe like. If a particular embodiment of the CTIS requires clientsoftware for the user to install, this could be supplied upon successfuluser registration. FIG. 4 shows an exemplary embodiment of a userregistration interface 400, wherein a user can input Basic Info 405(e.g., member ID, password, secret question/answer, e-mail address,etc.), Device Info 410 (e.g., mobile phone carrier, phone manufacturer &model, operating system, etc.), Demographics 415 (e.g., gender, year ofbirth, zip code, country of residence, household income, job title,industry, etc.), and Content Preferences 420 (e.g., interests,subscriptions, content delivery options, personal history options, cacheoptions, geo-tracking options, ad delivery options, etc.) in a pluralityof fields 425. In an alternative embodiment, a basic user identificationpacket (e.g., a “cookie”) is sent with a user's first code scan, thusestablishing a basic user profile that can be filled in with greaterdetail at a later time.

Code Capture (105)

Scannable codes within the CTIS may be found in a variety of locations,including but not limited to newspaper and magazine articles, signs andbillboards, flyers, store locations and kiosks, consumer products,packages, clothing, stickers, websites, software displays, televisionbroadcasts, virtual worlds, and/or the like. The nature of the code andassociated method with which the code can be scanned will depend to someextent on where the code is found, but among the possible types of codesare standard barcodes (e.g., UPC, EAN, Code 128, etc.), 2D matrix codes(e.g., QR code, Semacode, Data Glyphs, mCodes, etc.), user-input codes(e.g., text messages), RFID tags, pure images (e.g., an image of a signto be analyzed by optical character recognition), website links,software inputs, and/or the like. These codes may be located on anymedium (e.g., on newspapers, magazines, books, video content, computerscreens, embedded in objects (e.g., RFID tags on clothes, etc.), and/orthe like). One embodiment employs 2D matrix codes, examples of which areprovided in FIG. 5 a, due to their large data capacity, ease ofscanning, and resilience to damage or error. These examples include QRcodes 500, Mcodes 505, Semacodes 510, and/or the like.

In scanning a code, the code image may not always be recorded faithfullyand/or in an ideal and/or suitable condition for decoding and/ormatching to associated content. Consequently, the CTIS may be configuredto enhance and/or otherwise process a code image in order to betterrecognize the code. FIGS. 5 b-c show implementations of logic flow forprocessing and/or managing non-ideal code scans in embodiments of CTISoperation. In FIG. 5 b, a scanned code is received at the CTIS server(513) and a first attempt is made to decode a received code scan (515).In one implementation, a received code scan may take the form of abitmap image and/or a compressed bitmap image. If the decoding issuccessful (520), then the code is matched to associated content (525)that is ultimately destined to be served to a user. Otherwise, adetermination is made as to whether enhancement should be applied to thescanned code (530). If not, then an error message and/or suggestions onhow to improve the quality of the scanned code may be returned to theuser (535). The CTIS may decide not to apply enhancement, for example,if enhancement has already been applied unsuccessfully to the same imagebefore or if the quality of the image is so poor as to be clearly beyondimprovement. If enhancement is to be applied, then the CTIS determinesthe appropriate enhancement type (540) based, for example, on thequality and character of the scanned code image and subsequently appliesthe enhancement (545), after which a new attempt is made to decode thescanned code.

In some implementations, multiple enhancement processes may be appliedagainst a scanned code and the results compared in order to determinethe encoded content. Prior to enhancement, the image may be downsized ifnecessary for speed of processing in applying multiple enhancementagainst the image. Image quality may also be increased if necessary inorder to more successfully apply enhancements. For code images havingextraneous information and/or noise, an enhancement process may beapplied to remove all extraneous information, despeckle, and/or thelike. For code images having shades of gray and/or shadows obscuring theencoded content, an enhancement process may be applied to manipulate thecontrast and/or brightness of the image in order to create a pure blackand white image for cleaner decoding. For code images that are tiltedand/or not taken flat in a plane, an enhancement process may be appliedto tilt the plane of the code to create a flat plane to aid insuccessful decoding. For code images that are rotated or skewed, anenhancement process may be applied to de-rotate, deskew, and/orotherwise recreate proper rectangular pixel groupings that can bedecoded. For code images that are taken out of focus, an enhancementprocess may be applied to sharpen the image into recognizable pixelgroupings. Additionally, the CTIS may apply edge recognition processesto the code image to create a set of potential code images that can beprocessed and compared to records in a code database.

In some cases in which full decoding of a scanned code image isimpossible, a partial decoding may be accomplished and serving ofcontent achieved on that basis. A partial decoding may, for example,result in a probabilistic code match without ever successfully decodingthe complete code. FIG. 5 c shows an implementation of logic flow forpartial decoding in one embodiment of CTIS operation. A scanned codeimage is received (548), partially decoded (550), and the partiallydecoded content used to query a code database to find matching codes(555). A determination is made if any matches exist (560) and, if not,then the CTIS may return an error message to the user and/or makesuggestions about how to improve the image of the scanned code (565). Ifa match is found, however, then a determination is made as to whetherthere are multiple matches (570). If so, then the CTIS may considerancillary factors (575) in attempting to isolate a single code as themost likely match to the received code. Such ancillary factors mayinclude, but are not limited to: the incoming phone number, the carrier,the time of day, current code traffic, the source of the code, thecontext of the code, the user ID, the hardware ID, the user behavioralhistory, the user location, and/or the like. In considering ancillaryfactors, the CTIS is thus capable of predicting the true code based onknowledge of the user scanning the code, the context of the code,ambient factors, and/or the like. Once a unique code has beenidentified, this is designated as the matching code (580) and the CTISproceeds with determining the appropriate associated content to serve tothe user.

In an illustrative example of partial decoding, a given matrix code mayencode the string ABC123. In multiple processes, it may be determinedthat the code contains A_(—)1_(—)3 (where the blanks represent unknownvalues), _C1_, and AB_. Through these multiple processes, the CTISsystem now knows that the code contains ABC1_(—)3 and may check thisagainst codes in a code database to determine how many matches exist. Ifit finds two matching codes (e.g., ABC123 and ABC143), it may considerancillary factors. For example, ABC123 may correspond to anadvertisement for a new action movie while ABC143 corresponds to acoupon for women's cosmetics. If the user supplying the code isdetermined, based on a supplied user ID, to be a man with a history ofscanning movie-related codes, then the CTIS system may infer that ABC123is the matching code and serve the corresponding content. In oneimplementation, the CTIS server may further supply a confirmationrequest for partially matched codes, requesting the user to affirm ordeny that the supplied content is, in fact, the content that he or shewas seeking.

Scan Message Data Structure (115)

The Scan Message generated by the CTIS is, itself, a novel datastructure. In one embodiment that is illustrated in FIG. 6, it containsan identification field (605) comprising a unique user ID (605 a) and ahardware ID (605 b), both automatically supplied by the device used toscan and transmit the scanned code; a coordinate field (610) comprisingthe location geocode (610 a) (e.g., GPS coordinate, latitude andlongitude, city and state, etc.) and timestamp (610 b) of the scan; anda code field (615) supplying the specific content of the scanned code,which may include a subject code (615 a) for the code context, a sourcecode (615 b) indicating where the code was located, and a content code(615 c) indicating the specific information, if any, to be supplied inresponse to a scan of that code.

In one embodiment, the XML for the Scan Message takes the followingform:

<Scan_Message> <ID> <User ID> 012345 </User ID> <Hardware ID> Nokia 660</Hardware ID> </ID> <Coordinates> <Geocode> GPS 40 46.516 -73 57.98</Geocode> <Timestamp> 08/21/2006 13:45:28 </Timestamp> </Coordinates><Code> <Subject> entertainment; movies; comedy </Subject> <Source> NewYork Times </Source> <Content> Showtimes for latest popular comedy movie</Content> </Code> </Scan_Message>

Data Transmission (120, 125, 145, 150)

In one embodiment, sending and receiving the Scan Message and ReplyMessage will employ standard data transmission techniques to ensuresuccessful transmission and to preserve data integrity (e.g., TCP/IP,1xEV-DO, etc.). This is relevant for the Scan Message, which willcontain the coded information scanned by the user. Such techniques mayinclude but are not limited to the use of standard transmissionprotocols, “handshaking”, data compression, data encryption, and errorcorrection.

User Profile Structure (130)

The content of the user profile generated by the CTIS is itself a noveldata structure. In one embodiment illustrated in FIG. 7, the profile(700), which is uniquely specified by the user ID, will contain acategory of quasi-static user information (705) that is generally fixedover time and one of dynamic user information (730) that is updated witheach successive Scan Message that the user submits. The quasi-staticinfo (the “quasi” qualifier indicates that this information may beupdated, for example if a user changes their mobile device, however itdoes not change with each successive code scan) may include a hardwareID (710); “census” info (715) such as name, address, phone number,e-mail address, age, sex, race, marital status, number and age ofchildren, job title, annual income, etc.; subjects of interest specifiedby the user (720); and information regarding allowed methods to contactthe user (725). In one embodiment, this information could be supplied bythe user when registering for the CTIS service as, for example, on awebsite. The dynamic info in the profile may include a scan record(735), comprising the time (740), location (745), and scan code (750)(including subject (750 a), source (750 b) and content (750 c)); andstatistics related to the scan history (755). Such statistics mayinclude but are not limited to the most popular scan subjects, mostpopular scan sources, user space-time trajectories, etc. In oneembodiment, the profile contains a series of identifying codes distilledfrom the profile content (e.g., demographic category code based oncensus info, subject codes, source codes, etc.) that can be comparedwith similar codes in the Scan Message to determine the appropriate Adcontent to include in the Reply Message. In an alternative embodiment,the profile contains identifying keywords or “tags” based on the profilecontent that can be compared with similar tags in the Scan Message todetermine the appropriate content to include in the Reply Message. Inboth cases, the identifying labels for the user profiles may be input byCTIS administrators or automatically generated by an appropriatecomputer algorithm such as stripping header labels from ad descriptions(e.g., for example, stripping the header tags from an HTML ad).

In one embodiment, the XML for the User Profile may take the followingform:

<User> <Quasi-static info> <User_ID>123-45-6789</User_ID> <Hardware ID>Nokia 660 </Hardware ID> <Census info> John Smith; 123 Maple Dr.,Smalltown, CA 92676; (123)456-7890; jsmith@email.com; 55 years; male;white; married; 2 children; etc. </Census info> <Interests> camping;fishing; classic cars; movies; etc. </Interests> <Contact restrictions>Weekdays 8 AM - 7 PM only </Contact restrictions> </Quasi-static info><Dynamic info> <Scan record> <Scan_#1> <Time> 08/21/2006 13:45:28</Time> <Geocode> GPS 40 46.516 -73 57.98 </Geocode> <Code> <Subject>entertainment; movies; comedy </Subject> <Source> New York Times</Source> <Content> Showtimes for latest popular comedy movie </Content></Code> </Scan_#1> <Scan_#2> etc... </Scan_#2> etc... </Scan record><Scan statistics> <Popular subjects> entertainment; cars; travel; etc.</Popular subjects> <Popular sources> New York Times; Car and Driver;CNN.com; etc. <Popular sources> <Trajectories> Data files listing timeand geocode coordinates, computed average trajectories, likely locatons,etc. </Trajectories> etc... </Scan statistics> </Dynamic info> <Code><Subject> entertainment; movies; comedy </Subject> <Source> New YorkTimes </Source> <Content> Showtimes for latest popular comedy movie</Content> </Code> </User>

In one embodiment, data accumulated in a plurality of user profiles maybe analyzed to extract information about codes that are scanned. Forexample, the frequency with which a particular code is scanned may beextracted from user profiles and parsed by geographic, temporal, and/ordemographic criteria to yield code profiling information. Thisinformation may be stored in a code and/or Ad profile. In an alternativeembodiment, the code/Ad profile may be constructed and/or updated by theCTIS immediately upon the receipt of a Scan Message rather than beingextracted from user profiles.

Information Base (135)

The Information Base contains the content that may be included in theReply Message sent to the user and may be stored on the CTIS centralserver or on third party servers accessed by the CTIS. In oneembodiment, each Ad is associated with searchable labels. The Ad contenttogether with its labels, collectively referred to here as an Ad, formsa novel data structure. In one embodiment illustrated in FIG. 8, the Ad(800) is comprised of the specific ad content (805) (e.g., text, images,video, etc.) and a set of identifiers (810) including subject tags(815), information characterizing the temporal character of the Ad basedon which the Ad may be triggered (820) (e.g., 6 to 10 AM for a breakfastAd), information characterizing the geographic specificity of the Adbased on which the Ad may be triggered (825), demographic specificity ofthe Ad (830) (e.g., an Ad for family vacations), and the hardwarerequirements of the Ad (835) (e.g., hardware IDs of devices capable ofdisplaying the content of a particular Ad). In one embodiment, the Adwould also contain information identifying the source in which the Adcode is to appear. In another embodiment, the Ad would also containcode/Ad profile data, describing the history and/or statistics of scansrelated to the Ad.

In one embodiment, the XML for an Ad may look like:

<Ad> <Ad_ID>123</Ad_ID> <Ad content> textual movie showtime listings (or images, audio, video, URLs, etc.) </Ad content> <Identifiers><Subject> entertainment; movies; comedy </Subject> <Temporal>08/21/2006; 12:00:00 to 14:00:00 </Temporal> <Geographic> Smalltown, CA92676 </Geographic> <Demographic> 17 years and older </Demographic><Hardware> any (text only) </Hardware> </Identifiers> </Ad>

User Profile Query (130)

The CTIS queries the user profile to determine which Ads to include fromthe Information Base in the Reply Message in order to tailor those Adsto the user's profile characteristics, interests, and trajectories. Inone embodiment, a scanned code will yield two components in the ReplyMessage content: i) static content that is the same for every user whoscans the code, and ii) dynamic content that depends on the context ofthe user and the user profile. The static content (i) is determined fromthe scan code, while the dynamic content (ii) is determined by acombination of the scan code and the user profile, requiring a dynamiccontent generation heuristic to combine their respective influences.While a variety of such heuristic are possible and contemplated as beingwithin the scope of this disclosure, and the specific heuristic employedin a given realization will likely depend on the precise application andintention, we discuss one embodiment of this heuristic here forillustrative purposes with reference to FIG. 9. In one embodiment, thescan code and user profile is labeled with keywords or “tags” thatidentify the subject content of each. In an alternative embodiment, thescan code, user profile, and Ads are labeled with identifying codes. Ineither case, the heuristic exhibited in FIG. 9 first filters all Ads inthe Information Base by the subject code or tag of the scanned code(900). The Ads from 900 are filtered by the hardware ID (905) to ensurethat the Ad content can be successfully acquired and displayed by theuser. The Ads from 905 are filtered into separate categories by scanlocation (910 a 1), user address (910 a 2), user specified subjectinterests (910 b 1), user scan subject history (910 b 2), scan time (910c), or user demographic category (910 d). Ads in each of these filteredcategories are compared to determine which occur most commonly across910 a, b, c, & d (915). The server determines if 915 has yielded asingle Ad (920), and if so, it incorporates the Ad's content into theReply Message (930). Otherwise, it chooses one Ad at random from theremaining Ads (925) for incorporation. It must be emphasized again thatthis is but a single, specific embodiment of the user profile queryheuristic intended for illustrative purposes. The heuristic is highlyflexible and can be finely tuned for the specific application at hand.Some other possible methods may include alternative ordering of filters,addition or removal of filters, weighted filtering, complex conditionaltrees, and/or the like.

As an exemplary implementation of this embodiment of the Ad filteringheuristic, we consider the situation discussed above with reference toFIG. 2. Here, the user scans a code from an article on finance andinvestment in the business section of a media publication. Keywordsassociated with this code may include Business, Finance, Investment,etc. Consequently, only those Ads possessing these identifying keywordsare passed at 800. In an alternative embodiment, the keywords may beranked in order or relevance and the Ads filtered accordingly. The Adsfrom 900 are filtered by Hardware ID; we presently assume that theuser's mobile device is equipped with advanced capabilities (text,image, audio, video, internet, etc.), so that all Ads are passed at 905.In an alternative embodiment, the Ad filter may preferentially choosethose Ads that take fullest advantage of the user device's displaycapabilities. Of the remaining Ads, there is one for a brokerage firmthat is tagged with a location code corresponding to the user's address(San Francisco, Calif.), the user's specified subject interests(investing, retirement), and a portion of the user's demographic profile(age 55 or older). The three tag matches (location, subject, anddemographic) distinguish this Ad from the others in the InformationBase, which, in this example, all have two or fewer tag matches; so thisunique Ad, a brokerage firm located in San Francisco, Calif. withretirement services, is chosen to be served to the user's mobile device.

In one embodiment, the user may respond to the Reply Message with arelevance rating. This rating may then be stored in the user profileand/or employed to refine the criteria for tailoring future ReplyMessages to that user.

In one embodiment, the Ads would not be filtered by hardware ID at 905.Rather, when a final Ad has been selected for inclusion in the ReplyMessage following filtration under the other relevant criteria, theserver will determine whether that Ad is properly formatted for thedevice specified by the hardware ID. If so, then the Ad will be includedin the Reply Message as is. Otherwise, it will be converted into therequired format appropriate to the user's mobile device. For example, ifthe selected Ad contains color images but the server determines that theuser's hardware device is an early model BlackBerry that onlyaccommodates monochromatic text, the server will implement a peripheralapplication to strip the text content from the Ad and incorporate onlythat in the Reply Message.

Non-Triggered Ad Serving

Though Ads served by the CTIS are determined by codes scanned at sometime in the past, it is possible for the CTIS to serve Ads without anyimmediately contiguous, causal code scan. A general illustration of thiscapability was given above in FIG. 3, where each Ad provider hasspecific geographic locations of operation. These are assumed to bestores/restaurants for the present purposes of illustration in thisdisclosure, but they may have different character for differentembodiments and applications, including but not limited to kiosks, signsand billboards, offices, hospitals, real estate, shelters, emergencyservice providers, traffic monitors, individuals, websites, virtualworld locations, and/or the like. A chosen distance surrounding each Adprovider location defines a “provider zone”, where the metric by which“distance” is gauged may be generalized in the case ofcyberspace/virtual world locations. A provider zone breach occurs when auser scans a code within a provider zone. This may be regardless of thecontent of the scanned code, for in this example the goal is to recordthe user's space-time position. In an alternative embodiment, a providerzone breach can be registered even if a user does not scan a code withinthe provider zone, if the CTIS can infer a breach from two or more codescans outside the provider zone through interpolation. When such aprovider zone breach occurs, a special note may be incorporated into theuser profile, such as in the Scan statistics module (755), indicatingthe time and the particular Ad provider.

In an alternative implementation, the CTIS may be configured toautomatically query a user position without scanned codes. For example,a user's mobile device may be configured to periodically register it'sGPS location with the CTIS system. In another implementation, the CTISmay be able to continuously monitor the position of a client mobiledevice based on the cell site or tower to which the device iscommunicatively coupled. Cell site based user location may also beregistered when a user scans a code.

From an accumulated record of these breaches, data of the form of FIG.10 can be determined. FIG. 10 shows a histogram (1000) of provider zonebreaches in 20 minute intervals for a particular user over a chosen timescale, which we will take to be two months in this example. In oneembodiment, such histograms will correspond to breaches of specific Adprovider locations; while in an alternative embodiment, they willcorrespond to breaches of any of a plurality of locations correspondingto a specific Ad provider; while in still another embodiment, they willcorrespond to breaches of different locations of related but differentAd providers, chosen to target a specific collective user demographic.In this exemplary histogram, the significant provider zone breaches(those exceeding the threshold) are clustered around two times: oneapproximately centered at 9 AM (1005), and the other at 6 PM (1010).This may represent, for example, a user scanning codes as he passes thesame Ad provider location while riding a bus to and from work. In oneembodiment, a threshold breach level (1015), indicated in FIG. 10 by ahorizontal dotted line, is specified such that all breaches below thisthreshold number are ignored. This threshold level should be specifiedwith respect to the time scale of the histogram; in the present example,the threshold is 3 breaches per two month period. The average peak times(1020, 1025) of the breach clusters that exceed this threshold arecomputed (marked by X's in FIG. 9), and a time is chosen prior to thoseaverages (1030, 1035) to serve an appropriate Ad to the user. In oneembodiment, provider zone breaches could be sorted by scan subject, sothat a histogram of the form of FIG. 10 could be constructed for aspecific category of scans in order to further tailor the supplied Adcontent.

In another embodiment, the system may be generalized to analyzetrajectories in “cyberspace-time”. In this embodiment, a record oftrajectories is kept of the user's activity on the world wide web asbrowsed, for example, on the user's internet enabled mobile device. Ageneralized concept of “distance” may be incorporated, for examplereflecting an average number of links needed to get from one website toanother. Provider locations become websites in this embodiment, and azone breach may be registered when the user is a specified number oflinks away from the provider's website. Then, just as before, the CTIScan anticipate user cyberspace-time trajectories and supply Ads,coupons, pop-ups, etc. related to websites that the user is approaching.For example, the CTIS may track that a user visits web site A at 9:00 AMand web site B at 9:20 AM every day. The CTIS may then provide ads towebsite A at 8:50 AM and to website B at 9:10 that are targeted to thatuser. In an alternative embodiment, the CTIS may provide this targetinginformation to existing ad serving systems, which in turn may use thetargeting information for timely placement of ads. The aggregation ofsuch targeting information, in particular, may be useful to advertisersand website owners. For example, reports may be run on user profilessorted by location (e.g., web sites) and time of visit. This informationmay be supplied, along with user profile IDs, which may then be used bythe advertising servers and/or websites to pre-cache ads that arerelevant to the users' interest just prior to their anticipated visitsto the website. As such, the CTIS works in conjunction with certainwebsites to supply user-specific Ads on those sites. As a result, thecontent of the user profile within the CTIS may be used to select Adsthat the user browses using their mobile device. In an alternativeembodiment, web-based Ads may be specific to the trajectories of usersin geographic space-time, since that information is included in the userprofile. For example, if a user is known to be passing by a coffee shopat a specific location and time every day (e.g., a coffee shop on 123Main Street, NY, N.Y. at 9:00 AM), and is also know to visit a specificwebsite at that time (e.g., at 9:00 AM the user visits website C readingthe daily news on their walk to work), then the system may provide theuser with Ads directly to their PDA or embedded in website C (because itwas pre-loaded as already discussed) for the coffee shop. As such, theCTIS provides a mechanism to provide geographically relevant ads totraditional websites. In yet another embodiment, the total content ofthe websites browsed by a user on their mobile device may be modified bythe content of the user profile within the CTIS. For example, a newswebsite may select articles for a user that are specific to the userprofile, including their interests, demographics, current time andlocation, etc.

In another embodiment, the CTIS may analyze the user trajectories in“virtual worlds” or “synthetic realities” and serve ads accordingly. Anexample of a virtual world is a massively multiplayer online game, suchas The Sims Online, EverQuest, World of Warcraft, Second Life, and/orthe like. In such a virtual environment, a code scan may be comprised ofa particular user action or decision such as initiating or completing agame mission, clicking on an icon, saving a game, etc. In such virtualworlds, geographies and virtual locations may be used in employingtrajectories. The history of user activity within the virtual world maythen be incorporated into the user profile and used by the CTIS to serveads within the context of the virtual world or elsewhere. For example,in games like Second Life, virtual televisions, billboards, etc. may beused as advertising delivery mechanisms.

Selecting the proper Ad to serve to the user in the non-triggered Adserving embodiment of the CTIS may be accomplished using a variety ofheuristics that are best tailored to suit the specific use orapplication. Nevertheless, we present an example of a specificembodiment in FIG. 11 a for illustrative purposes. In this embodiment, aweighting system may be employed to select among the Ads of a specificAd provider once it is established that an Ad from this provider is tobe served to the user based on the analysis of FIG. 10. This weightingsystem begins by assigning a score of 1 (1100) to all Ads in theInformation Base corresponding to the provider. This score is multipliedby a subject coefficient (1105) for every match between the Ad subjectand the user specified subject interest or scan subject history. Thatcoefficient is 2 in the present example, so N matches would yield aweighting factor of 2^(N). The Ad score may also be multiplied by a timecoefficient (1110) if the serving time (1030 or 1035) falls within atime range specified for a particular Ad. In the present example, thetime coefficient is 4, expressing the greater importance of this factorcompared to a single subject match. Finally, the Ad score may bemultiplied by a demographic coefficient (1115) for every match betweenthe Ad demographic category and that of the user. That coefficient is1.5 in the present example, reflecting the diminished importance of thisfactor compared to the time and subject considerations. M demographiccategory matches will yield a weighting factor of 1.5^(M). Once all ofthe Ad provider's Ads are scored in this fashion, those Ads with thehighest scores for that provider may be selected over the rest (1120).Similarly, the highest scoring Ads from other providers are selected andthe highest scoring Ads over all providers can be selected to serve fora particular time interval (1125). Finally, the proper time to serve theAd (e.g., 30 minutes prior to the expected average provider zone breachtime) is established (1130) and, if there is no further ambiguity(1135), the proper Ad is served at that time (1145). Any residualambiguity may be resolved by selecting randomly from the remaining Ads.

As a specific example of how this might work, we assume that thehistogram (1000) of FIG. 10 represents provider zone breaches for afast-food restaurant that a user passes on his way to and from work. AnAd in the restaurant's base of provided Ads matches the user's statedinterest in gourmet coffee, and this Ad is further labeled by a timeidentifier indicating that it is best served between 8 AM and 10 AM.Consequently, at 30 minutes before the user's average breach time of theprovider's zone, the server supplies the Ad to the user's mobile device,touting this restaurant's new line of gourmet coffee drinks.Alternatively, the user's profile may specify that he is married withtwo children. This matches the demographic category of an Ad in theprovider's base which is also labeled by a time identifier indicatingthat it is best served between 5 PM and 8 PM. As a result, 30 minutesbefore the user breaches the provider's zone on his way home from work,the server supplies the Ad to the user's mobile device, touting theirfamily-pack of hamburgers.

In an alternative embodiment, the CTIS may be configured to receive andimplement marketer rules for serving Ads. FIG. 11 b shows a schematicillustration of data structures related to establishment of a marketerrule for Ad serving in one embodiment of CTIS operation. A user profiledata sets (1147) may include a variety of data fields related to useractivities, interests, characteristics, and/or the like, such as but notlimited to: geographic visits (1149), as may be recorded by code scans;time (1151) associated with code scans; interest contacts (1153), suchas may be reflect the user's interests and may be based on the contextand/or associated content of scanned codes; gender, age, demographic,and/or other personal information (1155); and/or the like. Server datapulls (1157) may reference one or more data feeds to which the CTISserver has access in order to draw information that may be pertinent tomarketer rules and/or Ad serving procedures. A wide variety of differenttypes of feeds may be accessible, including but not limited to: globalnewsfeeds (1159), such as associated press wire services, weatherinformation, sports scores, political and social events, financialmarket data, and/or the like; category sector feeds (1161), such as morespecific and/or special interest news feeds; marketer specified feeds(1163); and/or the like. A marketer rule (1165) may be established byselecting one or more fields (1167) from the user profile data sets(1147) and/or the server data pulls (1157) and supplying associatedparameters (1165) and/or parameter values associated with those fields.In the illustrated implementation, the rule associates a PetroleumGazette field (1169) with a parameter specifying more than three oilarticles read per day (1175). In addition, the rule associates a gasstation visitation field (1171) with a parameter specifying more thanthree visits per week (1177). If both of these conditions are deemedtrue for a given CTIS user, then the CTIS may serve one or more Adsselected for and/or associated with the marketer rule. Aprice-per-impression (1179) may be charged for each time that the Ad isserved to a user under the circumstances specified by the rule. In oneimplementation, a marketer may propose a price-per-impression when he orshe creates the rule, which is then submitted to the CTIS and/or a CTISadministrator for approval. In another implementation, the CTIS mayautomatically generate a price-per-impression based on the rule and/orthe marketer. For example, a fixed charge may be applied for eachadditional field and associated parameter added to the rule, as thisrefines the specificity with which the associated Ads will be served andincreases the likelihood of transactional consummation. Once a rule iscomplete, it may be entered for storage and subsequent use in a marketerrules database (1181). It should be understood that the functionalitydescribed for this embodiment of the CTIS may be integrated or employedwithin any of the other CTIS embodiments described herein.

In one embodiment, the XML for the above marketer rule may take a formsimilar to the following:

<Rule> <Rule_ID>123</Rule_ID> <Rule_name> Oil Rule </Rule_name><Rule_owner> Ads R Us </Rule_owner> <Condition1> <Field1> PetroleumGazette </Field1> <Parameter1> 4 or more oil articles/day </Parameter1></Condition1> <Condition2> <Field2> Gas Station </Field2> <Parameter2> 4or more visits per week </Parameter2> </Condition2> <Ad_database> Hybridcar Ads </Ad_database> <Price> <Amount> $1.00 </Amount> <Contingency>Impression </Contingency> </Price> </Rule>

In one implementation, the elements of FIG. 11 b may form the basis of auser interface for marketer rule generation. A marketer and/or otherCTIS user may be presented with lists of user profile data sets (1147)and server data pulls (1157) that may be dragged and dropped to themarketer rule box (1165) to generate a marketer rule. When the parametervalues have been specified and the rule is complete, the user may clickOK to submit the rule and/or drag and drop the rule to a marketer rulesdatabase icon (1181).

FIG. 11 c shows an implementation of logic flow for generating a rulequeue in one embodiment of CTIS operation. A rule is instantiated(1182), and the CTIS server checks parameter quanta associated with therule (1183). A runtime quantum is discerned for the rule (1184) todetermine the timing for applying the rule. The rule is subsequentlyparsed to generate the appropriate query structure (1185), and the cronschedule for the rule is established based on the runtime quantum(1186). The rule may then be pushed to the cron schedule queue (1187),and a determination made as to whether there are any additional newrules to process (1188).

FIG. 11 d shows an implementation of logic flow for cron job queuemanagement in one embodiment of CTIS operation. The CTIS may monitor thecron job queue and, for each queued cron job associated with a rule thatis next in the queue (1189), the CTIS may determine whether or not it istime for that particular cron job to run (1190). If not, then the CTISpasses to the next cron job in the queue (1191). On the other hand, ifit is time to run, then the appropriate databases specified in the ruleare queried, and the particular cron job is dequeued (1192). If theresults of the database query match the rule criteria so as to requireserving an Ad impression to a user, then that match indication may bepassed to Ad selection modules in order to choose an Ad to supply to theuser. In one implementation, the marketer rule itself may uniquelydetermine an Ad to serve. In another implementation, the marketer rulemay determine a set or class of Ads to serve, from which a unique Ad maythen be randomly selected. In yet another implementation, as Ad may beselected from the marketer rule determined set or class of Ads based ona user profile.

It must be emphasized again that this is but a single, specificembodiment of the non-triggered Ad serving procedure intended forillustrative purposes. The procedure is highly flexible and can befinely tuned for the specific application at hand. Some other possiblemethods may include different relative weighting factors, alternativeweighting considerations, categorical filtering, consideration of thenumber of provider zone breaches above the threshold level, graduatedconsideration of the distance from the provider location, modifiedprovider zone shapes, pattern recognition algorithms, artificialintelligence facilitation, and/or the like.

Various Applications

The CTIS provides a targeted information serving system that may beapplied to a wide variety of marketing and information dispensationapplications. In one embodiment, the CTIS creates enhanced ads withcontent that cannot be included in a print ad. For example, a user whoscans a code related to an automobile ad is provided additional contentpertaining to the automobile such as detailed images, video, audio,reviews, and links to additional information. Based on the geocodeprovided in the Scan Message, the CTIS may provide a list of localdealerships and pricing. Based on the user profile, the CTIS may suggestother automobiles by the same manufacturer that are popular withcustomers that share the same income bracket, geographic address, numberof children, etc. as the user.

In another embodiment, the CTIS provides targeted coupons to consumers.By scanning a code in an article or advertisement of interest, a usermay be provided with a coupon code for a store or establishment near thelocation where the scan took place, thereby increasing the likelihoodthat the coupon would be used. Choosing the coupon based on the contentsof the user profile may further increase the likelihood of a consummatedtransaction. FIGS. 12 a and 12 b show two examples wherein the CTISsupplies coupons and/or discount info to a user. FIG. 12 a shows anadvertisement 1205 for hay fever medication that contains a scan code.Upon scanning the code, the user's cell phone is supplied with a coupon1210 for 25% off the advertised medication, along with a nearby store atwhich to redeem the coupon. FIG. 12 b shows an article related to eventsand nightlife in New York City 1215 that contains a scan code. Uponscanning the code to obtain additional content, the user may also beprovided with a contextual advertisement for a local bar 1220, includingan announcement of happy hour discount prices based on the time of thescan. In an alternative embodiment, the coupon could be provided to theuser based on an anticipated provider zone breach rather than acontiguous, causal code scan.

In another embodiment, the CTIS allows for reduced use of printed spacein media publications. For example, an ordinary printed article oradvertisement may be supplanted by a 2D matrix code that supplies thecontent directly to the user's mobile display device. Furthermore, thesupplied content may be dressed with additional content that isspecifically chosen for the user based on his/her profile or currentlocation, thus increasing the value and utility of the content whilestill utilizing significantly reduced print space. This increasedcontent value, coupled with the reduction in print space, may translateto significantly increased advertising revenue for media publications.In another embodiment, scan codes may be placed in web-based ads so thatusers may scan those ads with their mobile device. In anotherembodiment, scan codes may be placed in television-based ads.

In another embodiment, the CTIS provides a means to supply urgent orbreaking information. For example, a breaking news story that arrivestoo late to be included as a printed article can still be incorporatedinto a publication via a 2D matrix code. Publications could even have apermanent code in each issue that users can scan in order to accesstimely breaking and/or supplemental news for which there was a lack ofspace or time to include in the printed publication.

In another embodiment, the CTIS provides a means of disseminatingtargeted information over a large scale. For example, during awidespread emergency, a single 2D matrix code could be broadcast ontelevision. When users scan the code, they are supplied with regionalinformation/instructions, shelter locations, maps, etc. Certain usersmay be provided even more specific instructions if, for example, theirprofile lists their occupation as some form of emergency personnel. Inan alternative embodiment, the CTIS can provide targeted information toany or all users expected to be in the vicinity of a particular area orevent based on their history of space-time trajectories. For example, ifa chemical spill occurs and users are projected to be in the vicinity ofit, a prior warning to avoid the area can be broadcast to the users'mobile devices. In an alternative embodiment, traffic alerts can bebroadcast to the mobile devices of users projected to be in the vicinityof a high-traffic area before they are stuck there. The CTIS may supplytargeted Ads, including coupons, for nearby businesses, restaurants,coffee shops, etc. to these users for them to solicit while they waitfor traffic to disperse. In general, just as the CTIS can provideinformation to users about where they should go (e.g., Ad providerlocations), it can also warn them to stay out of areas that they shoudnot go, all based on the projected user trajectories.

In another embodiment, the CTIS may serve Ads based on prevailingambient conditions or climate at users' space-time positions. Forexample, this may occur when the relevance score for contextual Ads islow. An illustration of the logic and data flow in this embodiment isprovided in FIG. 13, wherein the contextual Ads selected from theInformation Base on the basis of code scan and user profile aresupplanted in favor of Ads chosen on the basis of prevailing ambientconditions at 1340. Exemplary embodiments are provided in FIGS. 14 and15. In FIG. 14, an Ad for allergy medication is provided 1447 in lieu ofweak contextual ad options 1442 in response to a code scan from theweather section of a media publication 1407 in conjunction with ambientweather information, including pollen count, queried at the server 1412.In FIG. 15, an Ad for sunscreen is provided 1547 in lieu of weakcontextual Ad options 1542 in response to a code scan from the frontpage section of a media publication 1507 in conjunction with ambientweather information, including humidity and UV index, queried directlyby the user's mobile device 1512. In various embodiments, certainambient conditions such as UV levels, humidity, download/upload speeds,and/or the like may be detected by the user's mobile device itself,while in other embodiments, ambient conditions are separately suppliedto a database used in conjunction with the CTIS.

In another embodiment, the CTIS may serve contextual Ads with contentenhanced by reference to prevailing ambient conditions. An illustrationof the logic and data flow in this embodiment is provided in FIG. 16wherein the contextual Ads selected from the information base at 1635are further refined by the ambient condition information at 1640.Exemplary embodiments are provided in FIGS. 17-20. In FIG. 17, a code isscanned from the Business section of a media publication 1707 and theCTIS selects luxury car Ads for display 1739 based on the scanned code,user location, and user profile 1732, and these Ads are further refinedbased on the ambient weather conditions provided to the server at 1712.In this case, warm and sunny weather provides further context to causethe CTIS to serve an Ad for a luxury convertible 1747. In FIG. 18, acode is scanned from the Travel section of a media publication 1807 andthe CTIS selects travel Ads for display 1839 based on the scanned codeand user profile 1832, which includes recent scan code transactionspertaining to travel and Miami sports scores. The CTIS consequentlyqueries the prevailing ambient weather conditions, comprised of cold andrainy weather, and supplies an Ad for Miami travel opportunities. InFIG. 19, a code is scanned from the Weekend section of a mediapublication 1907 and the CTIS selects a contextual Ad for eating out1939 from the Information base 1935 to serve based on the scanned codeand the prevailing ambient weather conditions, which are hot and sunny1912. This Ad is further refined by the user profile contents 1932indicating a college student interested in comics and entertainment, andan Ad for an ice cream shop is finally supplied 1947. In FIG. 20, a codeis scanned from a baseball team schedule within a media publication2007. Based on the prevailing ambient weather conditions, includingscattered showers 2012, the scanned code, and the recent activity in theuser profile 2032, an Ad is supplied for ponchos and golf umbrellas2042.

In various embodiments, the CTIS may serve Ads based on a wide varietyof different ambient and/or situational conditions that may be detectedby the client mobile device, provided by internal or third partydatabases or information feeds, and/or the like. Some non-limitingexamples of potential ambient and/or situational conditions that may beconsidered and/or employed in selecting information to serve aretemperature, weather, light levels, UV levels, pollen count, humidity,air quality, prices of commodities and/or consumer goods, stock and/orfinancial index prices, global and/or local news events, internetactivities, sports scores, entertainment news, security warnings, and/orthe like. Consideration of such factors, by themselves or in conjunctionwith knowledge of a user such as may be gleaned from a user profile, mayform the basis of information serving rules that have great specificityof targeting. For example, a marketer rule within the CTIS may specifythat an Ad for participating bars that includes a coupon for aparticular brand of beer be served to all male users between the ages of21 and 40 with a history of scanning baseball-related codes within threehours of any time that the local baseball team wins a game. In anotherexample, a marketer rule within the CTIS may specify that an Ad forhybrid vehicles be served to all mothers with young children who have ahistory of scanning codes in Time magazine whenever the local price ofgasoline is greater than $2.50/gallon and they scan a code in an issueof Time that contains articles on both global warming and the Iraq War.Such hyper-targeted information serving, enabled by the CTIS, may provevery valuable to marketers and, in fact, to a wide variety ofinformation dissemination applications. Advertisers may be able topurchase Ad time and/or impressions that are conditional on events,people, time, place, ambient conditions, and/or combinations thereof,and/or the like. Consequently, a premium may be charged to advertisersfor each Ad served, and that premium may increase with the number offactors considered in serving the Ad (i.e., the degree to which the Adserving is targeted). In another implementation, a different price maybe charged per impression depending on the characteristics of theindividual to which the Ad is served. For example, the hybrid car Addescribed above may cost an advertiser $0.75 for an impression to a momwith adult children but $1.00 for an impression to a mom with youngchildren. Such graded pricing schemes may be specified within amarketing rule data structure.

In another embodiment, Ads may be served based on internet “climate”,such as serving Ads for virus detection software during an outbreak orserving Ads for high-speed broadband internet service on days of highinternet traffic. Conditions for specific websites (i.e.,cyberspace-time positions) could even be taken into account. Forexample, an Ad for high-speed broadband internet service could besupplied to visitors of a website experiencing particularly hightraffic.

In another embodiment, the CTIS may interface with various customerinformation databases, customer relationship management databases,and/or any other third party data sources in order to extractinformation that may be used to further target and/or refine Adselection for a given user. In one implementation, a marketer may supplythe CTIS with access to a given marketer-specific database and/or datafeed, in order to allow the CTIS to access the information thereinduring Ad selection processes. It should be understood that thefunctionality described for this embodiment of the CTIS may beintegrated or employed within any of the other CTIS embodimentsdescribed herein.

In another embodiment, the CTIS can interface with and optimize Ads forvarious User Agent devices, which may include PCs, laptops, PDAs, DVRs,cable boxes, internet-coupled media devices, and generally withprogrammable electronic devices possessing external data transfercapabilities and/or the like. FIG. 21 provides an illustration of thelogic and data flow in one embodiment. At 2115, the Scan Message contentfurther incorporates an optional Send to Device info, which specifiesthe destination User Agent device for a particular Ad. Then, at 2150,the Ad content selected by the CTIS is configured and/or optimized forthe User Agent device. Exemplary embodiments are provided in FIGS. 22and 23. In FIG. 22, a code from a sports publication is scanned by acell phone 2207, and a set-top-box/cable box/DVR User Agent device isspecified in the optional Send to Device information of the Scan Message2217. Consequently, in addition to contextual Ads supplied to the user'scell phone containing article/video links 2237 and season ticket offers2239, additional content is configured and sent to the User Agentdevice, such as authorization to descramble a pay-per-view sportingevent. In one embodiment, the user's mobile device would provide asignal to the User Agent device to cause it to send a Request for Infoto the CTIS. In another embodiment, the CTIS could send an appropriatelyconfigured signal to the User Agent device without the need for aRequest for Info signal. In FIG. 23, a code is scanned from the Techsection of a media publication using a cell phone 2307, and the optionalSend to Device info in the Scan Message specifies to send to a PC laptop2317. In accordance with the ambient conditions embodiment discussedpreviously, the CTIS gauges the ambient conditions associated with thedevice and determines that there has been a recent outbreak of aparticular computer virus over the internet 2322. Consequently, the CTISsupplies an offer for Virus Scan software subscriptions 2344, and maysend Virus Scan software directly to the specified PC laptop based onuser response.

In another embodiment, the CTIS provides a mechanism of institutingplans for large-scale coordination of personnel using a single codedbroadcast. High-level officials could determine which of a number ofcoordination plans to institute, each being associated with a unique 2Dmatrix code. When a plan is decided upon, the code is broadcast (such asover television or the internet) and lower-level employees scan the codeto obtain instructions, diagrams, maps, etc. that are tailored to theemployees' specific profile contents (i.e., job, skills, location,etc.). There may also be authorization information included in theemployee profiles that determines whether they are allowed to decode thebroadcast. As each employee progresses in their role within the plan,additional codes could be provided to the employee to scan, both toupdate their tasks and to track their progress, space-time trajectories,etc.

In another embodiment, the CTIS provides a means of employee tracking.For example, tasks are supplied to employees in the form of 2D matrixcodes. When a code is scanned by a given employee, the scan is recordedin the employee's profile and the employee is provided with instructionsspecific to that task and their position within the organization. Whenthe task is completed, the employee is provided with a completion codethat, when scanned, records the employee's successful completion of thattask and provides instructions for the next task and/or rewardinformation. In this manner, a record of employee accomplishments iskept as well as information regarding the time taken by the employee toaccomplish various tasks. A statistical record of an employee'sexperience by subject matter may also be generated and included inhis/her profile using the CTIS.

In another embodiment, the CTIS can connect users based on userprofiles. For example, in analogy to the “provider zone” breachesdiscussed above, the CTIS may also track the intersection of userspace-time trajectories. In particular, if one user is within aspecified distance of the projected space-time trajectory of anotheruser with whom the first user is associated, a message may be sent toone or both users notifying them of their potential proximity. Furtherconsideration of user profiles may also be utilized in suchnotifications.

In another embodiment, the CTIS can be used to provide informationregarding consumer products that cannot be included on the productpackaging. By scanning a code printed on a consumer product package, theuser could be provided with nutritional information, ingredients,website links, coupons, etc. Additional advertisements could also beserved based on the nature of the product scanned and the user profile.For example, a user who scans a container of mustard and has “grilling”listed among his/her interests may be served an advertisement and/orcoupon for hot dogs in addition to the mustard information.

In another embodiment, the CTIS provides an efficient mechanism ofserving real estate listings. For example, when a user scans a coderelated to real estate listings, the CTIS supplies him/her withadvertisements and/or listings that are close to their geographiclocation and appropriate to their demographic profile (i.e., income,marital status, number of children, etc.). In addition, the CTIS mayprovide additional listings to the user based on projected breaches ofzones corresponding to available homes or apartments that suit theuser's profile.

In another embodiment, the CTIS expedites software downloads to a user'smobile device. For example, by scanning a 2D matrix code in an ad for acell phone ringtone version of a popular song, the user canautomatically download the ringtone to the cell phone with which theyscan the code. The transaction is recorded in the user profile and mayresult in the display of an advertisement related to the latest album bythe artist who recorded the ringtone song, or an album by a relatedartist, at some future time.

Code Triggered Information Server Controller

FIG. 24 of the present disclosure illustrates inventive aspects of acode triggered information server controller 2401 in a block diagram. Inthis embodiment, the code triggered information server controller 2401may serve to aggregate, process, store, search, serve, identify,instruct, generate, match, and/or update Scan Messages, Reply Messages,Ads, user profiles, and/or other related data.

Typically, users, which may be people and/or other systems, engageinformation technology systems (e.g., commonly computers) to facilitateinformation processing. In turn, computers employ processors to processinformation; such processors are often referred to as central processingunits (CPU). A common form of processor is referred to as amicroprocessor. CPUs use communicative signals to enable variousoperations. Such communicative signals may be stored and/or transmittedin batches as program and/or data components facilitate desiredoperations. These stored instruction code signals may engage the CPUcircuit components to perform desired operations. A common type ofprogram is a computer operating system, which, commonly, is executed byCPU on a computer; the operating system enables and facilitates users toaccess and operate computer information technology and resources. Commonresources employed in information technology systems include: input andoutput mechanisms through which data may pass into and out of acomputer; memory storage into which data may be saved; and processors bywhich information may be processed. Often information technology systemsare used to collect data for later retrieval, analysis, andmanipulation, commonly, which is facilitated through a database program.Information technology systems provide interfaces that allow users toaccess and operate various system components.

In one embodiment, the code triggered information server controller 2401may be connected to and/or communicate with entities such as, but notlimited to: one or more users from user input devices 2411; peripheraldevices 2412; a cryptographic processor device 2428; and/or acommunications network 2413.

Networks are commonly thought to comprise the interconnection andinteroperation of clients, servers, and intermediary nodes in a graphtopology. It should be noted that the term “server” as used throughoutthis disclosure refers generally to a computer, other device, program,or combination thereof that processes and responds to the requests ofremote users across a communications network. Servers serve theirinformation to requesting “clients.” The term “client” as used hereinrefers generally to a computer, other device, program, or combinationthereof that is capable of processing and making requests and obtainingand processing any responses from servers across a communicationsnetwork. A computer, other device, program, or combination thereof thatfacilitates, processes information and requests, and/or furthers thepassage of information from a source user to a destination user iscommonly referred to as a “node.” Networks are generally thought tofacilitate the transfer of information from source points todestinations. A node specifically tasked with furthering the passage ofinformation from a source to a destination is commonly called a“router.” There are many forms of networks such as Local Area Networks(LANs), Pico networks, Wide Area Networks (WANs), Wireless Networks(WLANs), etc. For example, the Internet is generally accepted as beingan interconnection of a multitude of networks whereby remote clients andservers may access and interoperate with one another.

The code triggered information server controller 2401 may be based oncommon computer systems that may comprise, but are not limited to,components such as: a computer systemization 2402 connected to memory2429.

Computer Systemization

A computer systemization 2402 may comprise a clock 2430, centralprocessing unit (CPU) 2403, a read only memory (ROM) 2406, a randomaccess memory (RAM) 2405, and/or an interface bus 2407, and mostfrequently, although not necessarily, are all interconnected and/orcommunicating through a system bus 2404. Optionally, the computersystemization may be connected to an internal power source 2486.Optionally, a cryptographic processor 2426 may be connected to thesystem bus. The system clock typically has a crystal oscillator andprovides a base signal. The clock is typically coupled to the system busand various clock multipliers that will increase or decrease the baseoperating frequency for other components interconnected in the computersystemization. The clock and various components in a computersystemization drive signals embodying information throughout the system.Such transmission and reception of signals embodying informationthroughout a computer systemization may be commonly referred to ascommunications. These communicative signals may further be transmitted,received, and the cause of return and/or reply signal communicationsbeyond the instant computer systemization to: communications networks,input devices, other computer systemizations, peripheral devices, and/orthe like. Of course, any of the above components may be connecteddirectly to one another, connected to the CPU, and/or organized innumerous variations employed as exemplified by various computer systems.

The CPU comprises at least one high-speed data processor adequate toexecute program components for executing user and/or system-generatedrequests. The CPU may be a microprocessor such as AMD's Athlon, Duronand/or Opteron; IBM and/or Motorola's PowerPC; IBM's and Sony's Cellprocessor; Intel's Celeron, Itanium, Pentium, Xeon, and/or XScale;and/or the like processor(s). The CPU interacts with memory throughsignal passing through conductive conduits to execute stored signalprogram code according to conventional data processing techniques. Suchsignal passing facilitates communication within the code triggeredinformation server controller and beyond through various interfaces.Should processing requirements dictate a greater amount speed, parallel,mainframe and/or super-computer architectures may similarly be employed.Alternatively, should deployment requirements dictate greaterportability, smaller Personal Digital Assistants (PDAs) may be employed.

Power Source

The power source 2486 may be of any standard form for powering smallelectronic circuit board devices such as the following power cells:alkaline, lithium hydride, lithium ion, lithium polymer, nickel cadmium,solar cells, and/or the like. Other types of AC or DC power sources maybe used as well. In the case of solar cells, in one embodiment, the caseprovides an aperture through which the solar cell may capture photonicenergy. The power cell 2486 is connected to at least one of theinterconnected subsequent components of the code triggered informationserver thereby providing an electric current to all subsequentcomponents. In one example, the power source 2486 is connected to thesystem bus component 2404. In an alternative embodiment, an outsidepower source 2486 is provided through a connection across the I/O 2408interface. For example, a USB and/or IEEE 1394 connection carries bothdata and power across the connection and is therefore a suitable sourceof power.

Interface Adapters

Interface bus(ses) 2407 may accept, connect, and/or communicate to anumber of interface adapters, conventionally although not necessarily inthe form of adapter cards, such as but not limited to: input outputinterfaces (I/O) 2408, storage interfaces 2409, network interfaces 2410,and/or the like. Optionally, cryptographic processor interfaces 2427similarly may be connected to the interface bus. The interface busprovides for the communications of interface adapters with one anotheras well as with other components of the computer systemization.Interface adapters are adapted for a compatible interface bus. Interfaceadapters conventionally connect to the interface bus via a slotarchitecture. Conventional slot architectures may be employed, such as,but not limited to: Accelerated Graphics Port (AGP), Card Bus,(Extended) Industry Standard Architecture ((E)ISA), Micro ChannelArchitecture (MCA), NuBus, Peripheral Component Interconnect (Extended)(PCI(X)), PCI Express, Personal Computer Memory Card InternationalAssociation (PCMCIA), and/or the like.

Storage interfaces 2409 may accept, communicate, and/or connect to anumber of storage devices such as, but not limited to: storage devices2414, removable disc devices, and/or the like. Storage interfaces mayemploy connection protocols such as, but not limited to: (Ultra)(Serial) Advanced Technology Attachment (Packet Interface) ((Ultra)(Serial) ATA(PI)), (Enhanced) Integrated Drive Electronics ((E)IDE),Institute of Electrical and Electronics Engineers (IEEE) 1394, fiberchannel, Small Computer Systems Interface (SCSI), Universal Serial Bus(USB), and/or the like.

Network interfaces 2410 may accept, communicate, and/or connect to acommunications network 2413. Through a communications network 2413, thecode triggered information server controller is accessible throughremote clients 2433 b (e.g., computers with web browsers) by users 2433a. Network interfaces may employ connection protocols such as, but notlimited to: direct connect, Ethernet (thick, thin, twisted pair10/100/1000 Base T, and/or the like), Token Ring, wireless connectionsuch as IEEE 802.11a-x, and/or the like. A communications network may beany one and/or the combination of the following: a directinterconnection; the Internet; a Local Area Network (LAN); aMetropolitan Area Network (MAN); an Operating Missions as Nodes on theInternet (OMNI); a secured custom connection; a Wide Area Network (WAN);a wireless network (e.g., employing protocols such as, but not limitedto a Wireless Application Protocol (WAP), I-mode, and/or the like);and/or the like. A network interface may be regarded as a specializedform of an input output interface. Further, multiple network interfaces2410 may be used to engage with various communications network types2413. For example, multiple network interfaces may be employed to allowfor the communication over broadcast, multicast, and/or unicastnetworks.

Input Output interfaces (I/O) 2408 may accept, communicate, and/orconnect to user input devices 2411, peripheral devices 2412,cryptographic processor devices 2428, and/or the like. I/O may employconnection protocols such as, but not limited to: Apple Desktop Bus(ADB); Apple Desktop Connector (ADC); audio: analog, digital, monaural,RCA, stereo, and/or the like; IEEE 1394a-b; infrared; joystick;keyboard; midi; optical; PC AT; PS/2; parallel; radio; serial; USB;video interface: BNC, coaxial, composite, digital, Digital VisualInterface (DVI), RCA, RF antennae, S-Video, VGA, and/or the like;wireless; and/or the like. A common output device is a television set,which accepts signals from a video interface. Also, a video display,which typically comprises a Cathode Ray Tube (CRT) or Liquid CrystalDisplay (LCD) based monitor with an interface (e.g., DVI circuitry andcable) that accepts signals from a video interface, may be used. Thevideo interface composites information generated by a computersystemization and generates video signals based on the compositedinformation in a video memory frame. Typically, the video interfaceprovides the composited video information through a video connectioninterface that accepts a video display interface (e.g., an RCA compositevideo connector accepting an RCA composite video cable; a DVI connectoraccepting a DVI display cable, etc.).

User input devices 2411 may be card readers, dongles, finger printreaders, gloves, graphics tablets, joysticks, keyboards, mouse (mice),remote controls, retina readers, trackballs, trackpads, and/or the like.

Peripheral devices 2412 may be connected and/or communicate to I/Oand/or other facilities of the like such as network interfaces, storageinterfaces, and/or the like. Peripheral devices may be audio devices,cameras, dongles (e.g., for copy protection, ensuring securetransactions with a digital signature, and/or the like), externalprocessors (for added functionality), goggles, microphones, monitors,network interfaces, printers, scanners, storage devices, video devices,video sources, visors, and/or the like.

It should be noted that although user input devices and peripheraldevices may be employed, the code triggered information servercontroller may be embodied as an embedded, dedicated, and/ormonitor-less (i.e., headless) device, wherein access would be providedover a network interface connection.

Cryptographic units such as, but not limited to, microcontrollers,processors 2426, interfaces 2427, and/or devices 2428 may be attached,and/or communicate with the code triggered information servercontroller. A MC68HC16 microcontroller, commonly manufactured byMotorola Inc., may be used for and/or within cryptographic units.Equivalent microcontrollers and/or processors may also be used. TheMC68HC16 microcontroller utilizes a 16-bit multiply-and-accumulateinstruction in the 16 MHz configuration and requires less than onesecond to perform a 512-bit RSA private key operation. Cryptographicunits support the authentication of communications from interactingagents, as well as allowing for anonymous transactions. Cryptographicunits may also be configured as part of CPU. Other commerciallyavailable specialized cryptographic processors include VLSI Technology's33 MHz 6868 or Semaphore Communications' 40 MHz Roadrunner 184.

Memory

Generally, any mechanization and/or embodiment allowing a processor toaffect the storage and/or retrieval of information is regarded as memory2429. However, memory is a fungible technology and resource, thus, anynumber of memory embodiments may be employed in lieu of or in concertwith one another. It is to be understood that the code triggeredinformation server controller and/or a computer systemization may employvarious forms of memory 2429. For example, a computer systemization maybe configured wherein the functionality of on-chip CPU memory (e.g.,registers), RAM, ROM, and any other storage devices are provided by apaper punch tape or paper punch card mechanism; of course such anembodiment would result in an extremely slow rate of operation. In atypical configuration, memory 2429 will include ROM 2406, RAM 2405, anda storage device 2414. A storage device 2414 may be any conventionalcomputer system storage. Storage devices may include a drum; a (fixedand/or removable) magnetic disk drive; a magneto-optical drive; anoptical drive (i.e., CD ROM/RAM/Recordable (R), ReWritable (RW), DVDR/RW, etc.); an array of devices (e.g., Redundant Array of IndependentDisks (RAID)); and/or other devices of the like. Thus, a computersystemization generally requires and makes use of memory.

Component Collection

The memory 2429 may contain a collection of program and/or databasecomponents and/or data such as, but not limited to: operating systemcomponent(s) 2415 (operating system); information server component(s)2416 (information server); user interface component(s) 2417 (userinterface); Web browser component(s) 2418 (Web browser); database(s)2419; mail server component(s) 2421; mail client component(s) 2422;cryptographic server component(s) 2420 (cryptographic server); the codetriggered information server component(s) 2435; and/or the like (i.e.,collectively a component collection). These components may be stored andaccessed from the storage devices and/or from storage devices accessiblethrough an interface bus. Although non-conventional program componentssuch as those in the component collection, typically, are stored in alocal storage device 2414, they may also be loaded and/or stored inmemory such as: peripheral devices, RAM, remote storage facilitiesthrough a communications network, ROM, various forms of memory, and/orthe like.

Operating System

The operating system component 2415 is an executable program componentfacilitating the operation of the code triggered information servercontroller. Typically, the operating system facilitates access of I/O,network interfaces, peripheral devices, storage devices, and/or thelike. The operating system may be a highly fault tolerant, scalable, andsecure system such as Apple Macintosh OS X (Server), AT&T Plan 9, Be OS,Linux, Unix, and/or the like operating systems. However, more limitedand/or less secure operating systems also may be employed such as AppleMacintosh OS, Microsoft DOS, Microsoft Windows2000/2003/3.1/95/98/CE/Millenium/NT/Vista/XP (Server), Palm OS, and/orthe like. An operating system may communicate to and/or with othercomponents in a component collection, including itself, and/or the like.Most frequently, the operating system communicates with other programcomponents, user interfaces, and/or the like. For example, the operatingsystem may contain, communicate, generate, obtain, and/or provideprogram component, system, user, and/or data communications, requests,and/or responses. The operating system, once executed by the CPU, mayenable the interaction with communications networks, data, I/O,peripheral devices, program components, memory, user input devices,and/or the like. The operating system may provide communicationsprotocols that allow the code triggered information server controller tocommunicate with other entities through a communications network 2413.Various communication protocols may be used by the code triggeredinformation server system controller as a subcarrier transport mechanismfor interaction, such as, but not limited to: multicast, TCP/IP, UDP,unicast, and/or the like.

Information Server

An information server component 2416 is a stored program component thatis executed by a CPU. The information server may be a conventionalInternet information server such as, but not limited to Apache SoftwareFoundation's Apache, Microsoft's Internet Information Server, and/orthe. The information server may allow for the execution of programcomponents through facilities such as Active Server Page (ASP), ActiveX,(ANSI) (Objective-) C (++), C#, Common Gateway Interface (CGI) scripts,Java, JavaScript, Practical Extraction Report Language (PERL), Python,WebObjects, and/or the like. The information server may support securecommunications protocols such as, but not limited to, File TransferProtocol (FTP); HyperText Transfer Protocol (HTTP); Secure HypertextTransfer Protocol (HTTPS), Secure Socket Layer (SSL), and/or the like.The information server provides results in the form of Web pages to Webbrowsers, and allows for the manipulated generation of the Web pagesthrough interaction with other program components. After a Domain NameSystem (DNS) resolution portion of an HTTP request is resolved to aparticular information server, the information server resolves requestsfor information at specified locations on the code triggered informationserver controller based on the remainder of the HTTP request. Forexample, a request such as http://123.124.125.126/myInformation.htmlmight have the IP portion of the request “123.124.125.126” resolved by aDNS server to an information server at that IP address; that informationserver might in turn further parse the http request for the“/myInformation.html” portion of the request and resolve it to alocation in memory containing the information “myInformation.html.”Additionally, other information serving protocols may be employed acrossvarious ports, e.g., FTP communications across port 21, and/or the like.An information server may communicate to and/or with other components ina component collection, including itself, and/or facilities of the like.Most frequently, the information server communicates with the codetriggered information server database 2419, operating systems, otherprogram components, user interfaces, Web browsers, and/or the like.

Access to the code triggered information server database may be achievedthrough a number of database bridge mechanisms such as through scriptinglanguages as enumerated below (e.g., CGI) and through inter-applicationcommunication channels as enumerated below (e.g., CORBA, WebObjects,etc.). Any data requests through a Web browser are parsed through thebridge mechanism into appropriate grammars as required by the codetriggered information server. In one embodiment, the information serverwould provide a Web form accessible by a Web browser. Entries made intosupplied fields in the Web form are tagged as having been entered intothe particular fields, and parsed as such. The entered terms are thenpassed along with the field tags, which act to instruct the parser togenerate queries directed to appropriate tables and/or fields. In oneembodiment, the parser may generate queries in standard SQL byinstantiating a search string with the proper join/select commands basedon the tagged text entries, wherein the resulting command is providedover the bridge mechanism to the code triggered information server as aquery. Upon generating query results from the query, the results arepassed over the bridge mechanism, and may be parsed for formatting andgeneration of a new results Web page by the bridge mechanism. Such a newresults Web page is then provided to the information server, which maysupply it to the requesting Web browser.

Also, an information server may contain, communicate, generate, obtain,and/or provide program component, system, user, and/or datacommunications, requests, and/or responses.

User Interface

The function of computer interfaces in some respects is similar toautomobile operation interfaces. Automobile operation interface elementssuch as steering wheels, gearshifts, and speedometers facilitate theaccess, operation, and display of automobile resources, functionality,and status. Computer interaction interface elements such as check boxes,cursors, menus, scrollers, and windows (collectively and commonlyreferred to as widgets) similarly facilitate the access, operation, anddisplay of data and computer hardware and operating system resources,functionality, and status. Operation interfaces are commonly called userinterfaces. Graphical user interfaces (GUIs) such as the Apple MacintoshOperating System's Aqua, Microsoft's Windows XP, or Unix's X-Windowsprovide a baseline and means of accessing and displaying informationgraphically to users.

A user interface component 2417 is a stored program component that isexecuted by a CPU. The user interface may be a conventional graphic userinterface as provided by, with, and/or atop operating systems and/oroperating environments such as Apple Macintosh OS, e.g., Aqua, GNUSTEP,Microsoft Windows (NT/XP), Unix X Windows (KDE, Gnome, and/or the like),mythTV, and/or the like. The user interface may allow for the display,execution, interaction, manipulation, and/or operation of programcomponents and/or system facilities through textual and/or graphicalfacilities. The user interface provides a facility through which usersmay affect, interact, and/or operate a computer system. A user interfacemay communicate to and/or with other components in a componentcollection, including itself, and/or facilities of the like. Mostfrequently, the user interface communicates with operating systems,other program components, and/or the like. The user interface maycontain, communicate, generate, obtain, and/or provide programcomponent, system, user, and/or data communications, requests, and/orresponses.

Web Browser

A Web browser component 2418 is a stored program component that isexecuted by a CPU. The Web browser may be a conventional hypertextviewing application such as Microsoft Internet Explorer or NetscapeNavigator. Secure Web browsing may be supplied with 128 bit (or greater)encryption by way of HTTPS, SSL, and/or the like. Some Web browsersallow for the execution of program components through facilities such asJava, JavaScript, ActiveX, and/or the like. Web browsers and likeinformation access tools may be integrated into PDAs, cellulartelephones, and/or other mobile devices. A Web browser may communicateto and/or with other components in a component collection, includingitself, and/or facilities of the like. Most frequently, the Web browsercommunicates with information servers, operating systems, integratedprogram components (e.g., plug-ins), and/or the like; e.g., it maycontain, communicate, generate, obtain, and/or provide programcomponent, system, user, and/or data communications, requests, and/orresponses. Of course, in place of a Web browser and information server,a combined application may be developed to perform similar functions ofboth. The combined application would similarly affect the obtaining andthe provision of information to users, user agents, and/or the like fromthe code triggered information server enabled nodes. The combinedapplication may be nugatory on systems employing standard Web browsers.

Mail Server

A mail server component 2421 is a stored program component that isexecuted by a CPU 2403. The mail server may be a conventional Internetmail server such as, but not limited to sendmail, Microsoft Exchange,and/or the like. The mail server may allow for the execution of programcomponents through facilities such as ASP, ActiveX, (ANSI) (Objective-)C (++), CGI scripts, Java, JavaScript, PERL, pipes, Python, WebObjects,and/or the like. The mail server may support communications protocolssuch as, but not limited to: Internet message access protocol (IMAP),Microsoft Exchange, post office protocol (POP3), simple mail transferprotocol (SMTP), and/or the like. The mail server can route, forward,and process incoming and outgoing mail messages that have been sent,relayed and/or otherwise traversing through and/or to the code triggeredinformation server.

Access to the code triggered information server mail may be achievedthrough a number of APIs offered by the individual Web server componentsand/or the operating system.

Also, a mail server may contain, communicate, generate, obtain, and/orprovide program component, system, user, and/or data communications,requests, information, and/or responses.

Mail Client

A mail client component 2422 is a stored program component that isexecuted by a CPU 2403. The mail client may be a conventional mailviewing application such as Apple Mail, Microsoft Entourage, MicrosoftOutlook, Microsoft Outlook Express, Mozilla Thunderbird, and/or thelike. Mail clients may support a number of transfer protocols, such as:IMAP, Microsoft Exchange, POP3, SMTP, and/or the like. A mail client maycommunicate to and/or with other components in a component collection,including itself, and/or facilities of the like. Most frequently, themail client communicates with mail servers, operating systems, othermail clients, and/or the like; e.g., it may contain, communicate,generate, obtain, and/or provide program component, system, user, and/ordata communications, requests, information, and/or responses. Generally,the mail client provides a facility to compose and transmit electronicmail messages.

Cryptographic Server

A cryptographic server component 2420 is a stored program component thatis executed by a CPU 2403, cryptographic processor 2426, cryptographicprocessor interface 2427, cryptographic processor device 2428, and/orthe like. Cryptographic processor interfaces will allow for expeditionof encryption and/or decryption requests by the cryptographic component;however, the cryptographic component, alternatively, may run on aconventional CPU. The cryptographic component allows for the encryptionand/or decryption of provided data. The cryptographic component allowsfor both symmetric and asymmetric (e.g., Pretty Good Protection (PGP))encryption and/or decryption. The cryptographic component may employcryptographic techniques such as, but not limited to: digitalcertificates (e.g., X.509 authentication framework), digital signatures,dual signatures, enveloping, password access protection, public keymanagement, and/or the like. The cryptographic component will facilitatenumerous (encryption and/or decryption) security protocols such as, butnot limited to: checksum, Data Encryption Standard (DES), EllipticalCurve Encryption (ECC), International Data Encryption Algorithm (IDEA),Message Digest 5 (MD5, which is a one way hash function), passwords,Rivest Cipher (RC5), Rijndael, RSA (which is an Internet encryption andauthentication system that uses an algorithm developed in 1977 by RonRivest, Adi Shamir, and Leonard Adleman), Secure Hash Algorithm (SHA),Secure Socket Layer (SSL), Secure Hypertext Transfer Protocol (HTTPS),and/or the like. Employing such encryption security protocols, the codetriggered information server may encrypt all incoming and/or outgoingcommunications and may serve as node within a virtual private network(VPN) with a wider communications network. The cryptographic componentfacilitates the process of “security authorization” whereby access to aresource is inhibited by a security protocol wherein the cryptographiccomponent effects authorized access to the secured resource. Inaddition, the cryptographic component may provide unique identifiers ofcontent, e.g., employing an MD5 hash to obtain a unique signature for adigital audio file. A cryptographic component may communicate to and/orwith other components in a component collection, including itself,and/or facilities of the like. The cryptographic component supportsencryption schemes allowing for the secure transmission of informationacross a communications network to enable the code triggered informationserver component to engage in secure transactions if so desired. Thecryptographic component facilitates the secure accessing of resources onthe code triggered information server and facilitates the access ofsecured resources on remote systems; i.e., it may act as a client and/orserver of secured resources. Most frequently, the cryptographiccomponent communicates with information servers, operating systems,other program components, and/or the like. The cryptographic componentmay contain, communicate, generate, obtain, and/or provide programcomponent, system, user, and/or data communications, requests, and/orresponses.

The Code Triggered Information Server Database

The code triggered information server database component 2419 may beembodied in a database and its stored data. The database is a storedprogram component, which is executed by the CPU; the stored programcomponent portion configuring the CPU to process the stored data. Thedatabase may be a conventional, fault tolerant, relational, scalable,secure database such as Oracle or Sybase. Relational databases are anextension of a flat file. Relational databases consist of a series ofrelated tables. The tables are interconnected via a key field. Use ofthe key field allows the combination of the tables by indexing againstthe key field; i.e., the key fields act as dimensional pivot points forcombining information from various tables. Relationships generallyidentify links maintained between tables by matching primary keys.Primary keys represent fields that uniquely identify the rows of a tablein a relational database. More precisely, they uniquely identify rows ofa table on the “one” side of a one-to-many relationship.

Alternatively, the code triggered information server database may beimplemented using various standard data-structures, such as an array,hash, (linked) list, struct, structured text file (e.g., XML), table,and/or the like. Such data-structures may be stored in memory and/or in(structured) files. In another alternative, an object-oriented databasemay be used, such as Frontier, ObjectStore, Poet, Zope, and/or the like.Object databases can include a number of object collections that aregrouped and/or linked together by common attributes; they may be relatedto other object collections by some common attributes. Object-orienteddatabases perform similarly to relational databases with the exceptionthat objects are not just pieces of data but may have other types offunctionality encapsulated within a given object. If the code triggeredinformation server database is implemented as a data-structure, the useof the code triggered information server database 2419 may be integratedinto another component such as the code triggered information servercomponent 2435. Also, the database may be implemented as a mix of datastructures, objects, and relational structures. Databases may beconsolidated and/or distributed in countless variations through standarddata processing techniques. Portions of databases, e.g., tables, may beexported and/or imported and thus decentralized and/or integrated.

In one embodiment, the database component 2419 includes several tables2419 a,b. A user profile table 2419 a includes fields such as, but notlimited to: a user ID, name, email address, address, demographicprofile, hardware ID, scan history record, scan statistics, and/or thelike. The user profile table may support and/or track multiple entityaccounts on a code triggered information server. An Information Basetable 2419 b includes fields such as, but not limited to: Ad providerID, Ad ID, Ad content, Ad labels, geographic tags, temporal tags,subject tags, Ad ratings, Ad statistics, and/or the like.

In one embodiment, the code triggered information server database mayinteract with other database systems. For example, employing adistributed database system, queries and data access by OLBS modules maytreat the combination of the code triggered information server database,an integrated data security layer database as a single database entity.

In one embodiment, user programs may contain various user interfaceprimitives, which may serve to update the code triggered informationserver. Also, various accounts may require custom database tablesdepending upon the environments and the types of clients the codetriggered information server may need to serve. It should be noted thatany unique fields may be designated as a key field throughout. In analternative embodiment, these tables have been decentralized into theirown databases and their respective database controllers (i.e.,individual database controllers for each of the above tables). Employingstandard data processing techniques, one may further distribute thedatabases over several computer systemizations and/or storage devices.Similarly, configurations of the decentralized database controllers maybe varied by consolidating and/or distributing the various databasecomponents 2419 a,b. The code triggered information server may beconfigured to keep track of various settings, inputs, and parameters viadatabase controllers.

The code triggered information server database may communicate to and/orwith other components in a component collection, including itself,and/or facilities of the like. Most frequently, the code triggeredinformation server database communicates with the code triggeredinformation server component, other program components, and/or the like.The database may contain, retain, and provide information regardingother nodes and data.

The Code Triggered Information Server

The code triggered information server component 2435 is a stored programcomponent that is executed by a CPU. The code triggered informationserver affects accessing, obtaining and the provision of information,services, transactions, and/or the like across various communicationsnetworks.

The code triggered information server component enables theidentification, generation, and aggregation of Scan Messages and ReplyMessages.

The code triggered information server component enabling access ofinformation between nodes may be developed by employing standarddevelopment tools such as, but not limited to: (ANSI) (Objective-) C(++), Apache components, binary executables, database adapters, Java,JavaScript, mapping tools, procedural and object oriented developmenttools, PERL, Python, shell scripts, SQL commands, web application serverextensions, WebObjects, and/or the like. In one embodiment, the codetriggered information server server employs a cryptographic server toencrypt and decrypt communications. The code triggered informationserver component may communicate to and/or with other components in acomponent collection, including itself, and/or facilities of the like.Most frequently, the code triggered information server componentcommunicates with the code triggered information server database,operating systems, other program components, and/or the like. The codetriggered information server may contain, communicate, generate, obtain,and/or provide program component, system, user, and/or datacommunications, requests, and/or responses.

Distributed Code Triggered Information Server

The structure and/or operation of any of the code triggered informationserver node controller components may be combined, consolidated, and/ordistributed in any number of ways to facilitate development and/ordeployment. Similarly, the component collection may be combined in anynumber of ways to facilitate deployment and/or development. Toaccomplish this, one may integrate the components into a common codebase or in a facility that can dynamically load the components on demandin an integrated fashion.

The component collection may be consolidated and/or distributed incountless variations through standard data processing and/or developmenttechniques. Multiple instances of any one of the program components inthe program component collection may be instantiated on a single node,and/or across numerous nodes to improve performance throughload-balancing and/or data-processing techniques. Furthermore, singleinstances may also be distributed across multiple controllers and/orstorage devices; e.g., databases. All program component instances andcontrollers working in concert may do so through standard dataprocessing communication techniques.

The configuration of the code triggered information server controllerwill depend on the context of system deployment. Factors such as, butnot limited to, the budget, capacity, location, and/or use of theunderlying hardware resources may affect deployment requirements andconfiguration. Regardless of if the configuration results in moreconsolidated and/or integrated program components, results in a moredistributed series of program components, and/or results in somecombination between a consolidated and distributed configuration, datamay be communicated, obtained, and/or provided. Instances of componentsconsolidated into a common code base from the program componentcollection may communicate, obtain, and/or provide data. This may beaccomplished through intra-application data processing communicationtechniques such as, but not limited to: data referencing (e.g.,pointers), internal messaging, object instance variable communication,shared memory space, variable passing, and/or the like.

If component collection components are discrete, separate, and/orexternal to one another, then communicating, obtaining, and/or providingdata with and/or to other component components may be accomplishedthrough inter-application data processing communication techniques suchas, but not limited to: Application Program Interfaces (API) informationpassage; (distributed) Component Object Model ((D)COM), (Distributed)Object Linking and Embedding ((D)OLE), and/or the like), Common ObjectRequest Broker Architecture (CORBA), process pipes, shared files, and/orthe like. Messages sent between discrete component components forinter-application communication or within memory spaces of a singularcomponent for intra-application communication may be facilitated throughthe creation and parsing of a grammar. A grammar may be developed byusing standard development tools such as lex, yacc, XML, and/or thelike, which allow for grammar generation and parsing functionality,which in turn may form the basis of communication messages within andbetween components. Again, the configuration will depend upon thecontext of system deployment.

Among the embodiments envisioned as being within the scope of thepresent invention are the following:

1. A processor-implemented method embodiment for serving ambientcondition sensitive information to a mobile user, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   associating the user activity interest information and user        situational information with a user profile;    -   updating the user profile with the associated information in a        database;    -   analyzing accumulated information associated with the user        profile;    -   querying an information database based on the analysis of the        user profile;    -   selecting information based on the user profile and ambient        conditions at a user location to include in a message; and    -   sending the message to a user.

2. The method of embodiment 1, wherein the information included in themessage sent to the user is selected based on a ranking.

3. The method of embodiment 1, further comprising receiving a relevancerating of the message sent to the user.

4. The method of embodiment 1, further comprising updating an Ad profilebased on the user activity interest information and user situationalinformation.

5. The method of embodiment 1, further, comprising:

-   -   determining information to include in a message based on the        querying of the information database.

6. The method of embodiment 1, wherein the user situational informationincludes geographic location.

7. The method of embodiment 7, wherein the user situational informationincludes geographic location at a given time.

8. The method of embodiment 1, wherein the user situational informationincludes a context of a scanned code.

9. The method of embodiment 1, wherein the user situational informationis continuously updated.

10. The method of embodiment 1, wherein the accumulated user activityinterest information comprises a record of user behavior.

11. The method of embodiment 1, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

12. The method of embodiment 11, wherein the code is a matrix code andthe scanned by a mobile device comprises taking a picture of the matrixcode with a mobile device camera.

13. The method of embodiment 11, further comprising:

-   -   receiving an image of the scanned code at a server; and    -   wherein analyzing accumulated information associated with the        user profile comprises matching the code image to a code image        database.

14. The method of embodiment 13, wherein the image of the scanned codewas sent via MMS.

15. The method of embodiment 14, wherein the message sent to the user issent via MMS.

16. The method of embodiment 14, wherein the image of the scanned codewas sent to a short code address.

17. The method of embodiment 13, further comprising:

-   -   performing an image enhancement on the image of the scanned code        prior to matching the code image to a code image database.

18. The method of embodiment 1, wherein the message sent to the user issent to a mobile device.

19. The method of embodiment 1, wherein the ambient conditions aremeasured by a user mobile device.

20. The method of embodiment 1, wherein the ambient conditions areretrieved from an ambient condition data feed.

21. The method of embodiment 1, wherein the ambient conditions compriseweather information.

22. The method of embodiment 1, wherein the ambient conditions comprisenews information.

23. The method of embodiment 1, further comprising:

-   -   querying a marketer rule database to extract a marketer rule;        and    -   wherein the selecting information is further based on        implementation of the marketer rule.

24. The method of embodiment 1, further comprising:

-   -   querying a third party customer database to extract a customer        record; and    -   wherein the selecting information is further based on the        customer record.

25. A processor-implemented method embodiment for serving ambientcondition sensitive information to a mobile user, comprising:

-   -   receiving at a server messages from a user comprised of user        identification, mobile device identification, a code image        scanned by the mobile device, time of the scan, and user        geographic location at the time of the scan, wherein the        messages were sent to a short code address via MMS;    -   associating the user identification with a user profile in a        database;    -   updating the user profile with the received messages;    -   enhancing the code image scanned by the mobile device;    -   analyzing the accumulated messages in the user profile;    -   determining proper information to serve to the user based on the        received message, the user profile, and ambient conditions at a        user location;    -   selecting the information to serve to the user from a database;    -   incorporating the selected information into a reply message; and    -   sending the reply message to the user's mobile device via MMS.

26. A processor-implemented method embodiment for receiving ambientcondition sensitive information, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information, including ambient        conditions at a user location;    -   incorporating user activity interest information in an interest        message;    -   incorporating user situational information in a situational        message;    -   sending the interest message to a server;    -   sending the situational message to the server; and    -   receiving a reply based on the interest message, the situational        message, and a user profile.

27. The method of embodiment 26, wherein the interest message andsituational message are bundled into a single message.

28. The method of embodiment 26, further comprising responding to thereply with a relevance rating.

29. The method of embodiment 26, wherein the reply is received on amobile device.

30. The method of embodiment 26, wherein the interest message andsituational message are sent from a mobile device.

31. The method of embodiment 26, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

32. The method of embodiment 26, wherein the user situationalinformation includes geographic location at a given time.

33. A processor-implemented method embodiment of serving ambientcondition sensitive information, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   analyzing the user activity interest information and user        situational information;    -   predicting expected user interest and situational information        from the analysis;    -   determining serving information to serve to a user based on        expected user interest information, expected user situational        information, and ambient conditions at a user location;    -   selecting the information to serve from a database;    -   incorporating the selected information into a message;    -   determining a target time and place to send a message;    -   incorporating serving information and target time and place into        a message; and    -   sending the message for distribution.

34. The method of embodiment 33, further, comprising:

-   -   querying and selecting the information to serve from a database.

35. The method of embodiment 34, further, comprising:

-   -   incorporating the selected information into a message.

36. The method of embodiment 33, further comprising receiving arelevance rating of the distributed message.

37. The method of embodiment 33, wherein the message is sent to a user.

38. The method of embodiment 33, wherein the proper place is anadvertising system.

39. The method of embodiment 38, further, comprising: querying andselecting the information to serve from a database.

40. The method of embodiment 39, further, comprising:

-   -   incorporating the selected information into a message.

41. The method of embodiment 40, wherein the message includes the targetplace and time.

42. The method of embodiment 41, wherein the message includes thedetermined serving information.

43. The method of embodiment 42, wherein the advertising system may usethe target place and time information to place advertising for a user toobserve.

44. The method of embodiment 41, further, comprising:

-   -   querying and selecting the information to serve from a database.

45. The method of embodiment 44, further, comprising:

-   -   incorporating the selected information into a placement message.

46. The method of embodiment 45, wherein the advertising system may usethe target place and time information and placement message to placeadvertising for a user to observe.

47. The method of embodiment 33, wherein the user situationalinformation is comprised of user space-time trajectories.

48. The method of embodiment 33, wherein the user situationalinformation is comprised of user web-surfing habits.

49. The method of embodiment 33, wherein the user situationalinformation is comprised of user trajectories in a virtual world.

50. The method of embodiment 33, wherein the information served to theuser is sent to a mobile device.

51. The method of embodiment 33, wherein the information served to theuser is served on a website.

52. The method of embodiment 33, wherein the information served to theuser is served in a virtual world.

53. The method of embodiment 33, wherein the information served to theuser is based on the user's geographic position.

54. The method of embodiment 33, wherein the information served to theuser is based on the time.

55. A processor-implemented method embodiment for accumulating userinformation and delivering targeted content based thereon, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   associating the user activity interest information and user        situational information with a user profile;    -   updating the user profile with the associated information in a        database;    -   analyzing accumulated information associated with the user        profile;    -   querying an information database based on the analysis of the        user profile;    -   selecting information based on the user profile to include in a        message; and    -   sending the message to a user.

56. The method of embodiment 55, wherein the information included in themessage sent to the user is selected based on a ranking.

57. The method of embodiment 55, further comprising receiving arelevance rating of the message sent to the user.

58. The method of embodiment 55, further comprising updating an Adprofile based on the user activity interest information and usersituational information.

59. The method of embodiment 55, further, comprising:

-   -   determining information to include in a message based on the        querying of the information database.

60. The method of embodiment 55, wherein the user situationalinformation includes geographic location.

61. The method of embodiment 60, wherein the user situationalinformation includes geographic location at a given time.

62. The method of embodiment 55, wherein the user situationalinformation includes a context of a scanned code.

63. The method of embodiment 55, wherein the user situationalinformation is continuously updated.

64. The method of embodiment 55, wherein the accumulated user activityinterest information comprises a record of user behavior.

65. The method of embodiment 55, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

66. The method of embodiment 65, wherein the code is a matrix code andthe scanned by a mobile device comprises taking a picture of the matrixcode with a mobile device camera.

67. The method of embodiment 65, further comprising:

-   -   receiving an image of the scanned code at a server; and    -   wherein analyzing accumulated information associated with the        user profile comprises matching the code image to a code image        database.

68. The method of embodiment 67, wherein the image of the scanned codewas sent via MMS.

69. The method of embodiment 68, wherein the message sent to the user issent via MMS.

70. The method of embodiment 69, wherein the image of the scanned codewas sent to a short code address.

71. The method of embodiment 70, further comprising:

-   -   performing an image enhancement on the image of the scanned code        prior to matching the code image to a code image database.

72. The method of embodiment 55, wherein the message sent to the user issent to a mobile device.

73. The method of embodiment 55, wherein the message sent to the user isserved on a website.

74. The method of embodiment 55, further comprising:

-   -   querying a marketer rule database to extract a marketer rule;        and    -   wherein the selecting information is further based on        implementation of the marketer rule.

75. The method of embodiment 55, further comprising:

-   -   querying a third party customer database to extract a customer        record; and    -   wherein the selecting information is further based on the        customer record.

76. A processor-implemented method embodiment for accumulating mobiledevice code scan information from a user and delivering content basedthereon, comprising:

-   -   receiving at a server messages from a user comprised of user        identification, mobile device identification, a code image        scanned by the mobile device, time of the scan, and user        geographic location at the time of the scan, wherein the        messages were sent to a shortcode address via MMS;    -   associating the user identification with a user profile in a        database;    -   updating the user profile with the received messages;    -   enhancing the code image scanned by the mobile device;    -   analyzing the accumulated messages in the user profile;    -   determining proper information to serve to the user based on the        received message and the user profile;    -   selecting the information to serve to the user from a database;    -   incorporating the selected information into a reply message; and    -   sending the reply message to the user's mobile device via MMS.

77. A processor-implemented method embodiment for receiving informationbased on accumulated user activity and situational information,comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   incorporating user activity interest information in an interest        message;    -   incorporating user situational information in a situational        message;    -   sending the interest message to a server;    -   sending the situational message to the server; and    -   receiving a reply based on the interest message, the situational        message, and a user profile.

78. The method of embodiment 77, wherein the interest message andsituational message are bundled into a single message.

79. The method of embodiment 77, further comprising responding to thereply with a relevance rating.

80. The method of embodiment 77, wherein the reply is received on amobile device.

81. The method of embodiment 77, wherein the interest message andsituational message are sent from a mobile device.

82. The method of embodiment 77, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

83. The method of embodiment 77, wherein the user situationalinformation includes geographic location at a given time.

84. A processor-implemented method embodiment of selecting data from adatabase based on user activity interest information, comprising:

-   -   filtering data in the database by activity subject tags;    -   determining which remaining data match:        -   user demographic category tags;        -   user geographic location tags;        -   user temporal tags;    -   selecting the data with the greatest number of matches; and    -   choosing a single datum from the remaining data.

85. The method of embodiment 84, wherein the data filtered by activitysubject tags are further matched to user subject interest tags.

86. The method of embodiment 84, wherein the data filtered by activitysubject tags are further matched to user hardware identification tags.

87. The method of embodiment 84, wherein the data are ads.

88. A processor-implemented method embodiment for predicting userinterest and situations and supplying information to the user basedthereon, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   analyzing the user activity interest information and user        situational information;    -   predicting expected user interest and situational information        from the analysis;    -   determining serving information to serve to a user based on        expected user interest and situational information;    -   selecting the information to serve from a database;    -   incorporating the selected information into a message;    -   determining a target time and place to send a message;    -   incorporating serving information and target time and place into        a message; and    -   sending the message for distribution.

89. The method of embodiment 88, further, comprising: querying andselecting the information to serve from a database.

90. The method of embodiment 89, further, comprising: incorporating theselected information into a message.

91. The method of embodiment 88, further comprising receiving arelevance rating of the distributed message.

92. The method of embodiment 88, wherein the message is sent to a user.

93. The method of embodiment 88, wherein the proper place is anadvertising system.

94. The method of embodiment 93, further, comprising:

-   -   querying and selecting the information to serve from a database.

95. The method of embodiment 94, further, comprising:

-   -   incorporating the selected information into a message.

96. The method of embodiment 95, wherein the message includes the targetplace and time.

97. The method of embodiment 96, wherein the message includes thedetermined serving information.

98. The method of embodiment 97, wherein the advertising system may usethe target place and time information to place advertising for a user toobserve.

99. The method of embodiment 96, further, comprising:

-   -   querying and selecting the information to serve from a database.

100. The method of embodiment 99, further, comprising:

-   -   incorporating the selected information into a placement message.

101. The method of embodiment 100, wherein the advertising system mayuse the target place and time information and placement message to placeadvertising for a user to observe.

102. The method of embodiment 88, wherein the user situationalinformation is comprised of user space-time trajectories.

103. The method of embodiment 88, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

104. The method of embodiment 103, wherein the code is a matrix code andthe scanned by a mobile device comprises taking a picture of the matrixcode with a mobile device camera.

105. The method of embodiment 104, further comprising:

-   -   receiving an image of the scanned code at a server; and    -   wherein analyzing accumulated information associated with the        user profile comprises matching the code image to a code image        database.

106. The method of embodiment 105, wherein the image of the scanned codewas sent via MMS.

107. The method of embodiment 106, wherein the message sent to the useris sent via MMS.

108. The method of embodiment 106 wherein the image of the scanned codewas sent to a short code address.

109. The method of embodiment 105 further comprising:

-   -   performing an image enhancement on the image of the scanned code        prior to matching the code image to a code image database.

110. The method of embodiment 88, wherein the information served to theuser is sent to a mobile device.

111. The method of embodiment 88, wherein the information served to theuser is based on the user's geographic position.

112. A processor-implemented method embodiment for predicting userinterest and situations and supplying information to the user basedthereon, comprising:

-   -   accumulating at a server a plurality of code images scanned by a        user's mobile device and sent to a short code address via MMS;    -   accumulating user situational information;    -   analyzing the user activity interest information and user        situational information;    -   predicting expected user interest and situational information        from the analysis;    -   determining serving information to serve to a user based on        expected user interest and situational information;    -   selecting the information to serve from a database;    -   incorporating the selected information into a message;    -   determining a target time and place to send a message;    -   incorporating serving information and target time and place into        a message; and    -   sending the message for distribution via MMS.

113. A processor-implemented method embodiment for scoring data based ona user profile and situational information and selecting data from adatabase, comprising:

-   -   assigning the same initial score to every datum;    -   multiplying each datum's score by a subject coefficient for        every match between the datum's subject tag and subject tags in        a user profile;    -   multiplying each datum's score by a temporal coefficient for a        match between the datum's temporal tag and a temporal tag in a        user profile;    -   multiplying each datum's score by a demographic coefficient for        a match between the datum's demographic tags and demographic        tags in a user profile;    -   selecting the highest scoring data; and    -   selecting a single datum from the remaining data.

114. The method of embodiment 113, wherein each datum's score is furthermultiplied by a geographic coefficient for every match between thedatum's geographic tags and the geographic tags in a user profile.

115. The method of embodiment 113, wherein each datum's score is furthermultiplied by a hardware coefficient for every match between the datum'shardware identification tags and the hardware identification tags in auser profile.

116. The method of embodiment 113 wherein the data are ads.

117. A processor-implemented method embodiment for coordinatingpersonnel based on delivered personnel directives, comprising:

-   -   accumulating user activity information;    -   accumulating user situational information;    -   associating the user activity interest information and user        situational information with a user profile;    -   updating the user profile with the associated information in a        database;    -   analyzing accumulated information associated with the user        profile;    -   querying an information database based on the analysis of the        user profile;    -   selecting information based on the user profile to include in a        personnel directive; and    -   sending the personnel directive to a user.

118. The method of embodiment 117, wherein the information included inthe personnel directive sent to the user is selected based on a ranking.

119. The method of embodiment 118, wherein the ranking is based on theuser's employment status.

120. The method of embodiment 118, wherein the ranking is based on theuser's progress in accomplishing a series of tasks.

121. The method of embodiment 117, further comprising receiving arelevance rating of the personnel directive sent to the user.

122. The method of embodiment 117, further comprising updating an Adprofile based on the user activity interest information and usersituational information.

123. The method of embodiment 117, wherein the information included inthe personnel directive sent to the user is selected based on ambientconditions.

124. The method of embodiment 117, further, comprising:

-   -   determining information to include in a personnel directive        based on the querying of the information database.

125. The method of embodiment 117, wherein the user situationalinformation includes geographic location.

126. The method of embodiment 125, wherein the user situationalinformation includes geographic location at a given time.

127. The method of embodiment 117, wherein the user activity informationis comprised of a code scanned by a mobile device.

128. The method of embodiment 127, wherein the code is a matrix code andthe scanned by a mobile device comprises taking a picture of the matrixcode with a mobile device camera.

129. The method of embodiment 128 further comprising:

-   -   receiving an image of the scanned code at a server; and    -   wherein analyzing accumulated information associated with the        user profile comprises matching the code image to a code image        database.

130. The method of embodiment 129, wherein the image of the scanned codewas sent via MMS.

131. The method of embodiment 130, wherein the message sent to the useris sent via MMS.

132. The method of embodiment 130, wherein the image of the scanned codewas sent to a short code address.

133. The method of embodiment 129, further comprising:

-   -   performing an image enhancement on the image of the scanned code        prior to matching the code image to a code image database.

134. The method of embodiment 117, wherein the user activity informationis comprised of an internet link chosen by the user.

135. The method of embodiment 117, wherein the user activity informationis comprised of user decisions within a virtual world.

136. The method of embodiment 117, wherein the personnel directive sentto the user is sent to a mobile device.

137. The method of embodiment 117, wherein the personnel directive sentto the user is served on a website.

138. The method of embodiment 117, wherein the personnel directive sentto the user is served within a virtual world.

139. A processor-implemented method embodiment for coordinatingpersonnel by serving personnel directives to a mobile device,comprising:

-   -   receiving at a server messages from a user comprised of user        identification, mobile device identification, a code image        scanned by the mobile device, time of the scan, and user        geographic location at the time of the scan, wherein the        messages are sent to a short code address via MMS;    -   associating the user identification with a user profile in a        database;    -   updating the user profile with the received messages;    -   enhancing the code image scanned by the mobile device;    -   analyzing the accumulated messages in the user profile;    -   determining proper information to serve to the user based on the        received message and the user profile;    -   selecting the information to serve to the user from a database;    -   incorporating the selected information into a personnel        directive; and    -   sending the personnel directive to the user's mobile device via        MMS.

140. A processor-implemented method embodiment for receiving personneldirectives, comprising:

-   -   accumulating user activity information;    -   accumulating user situational information;    -   incorporating user activity information in an activity message;    -   incorporating user situational information in a situational        message;    -   sending the activity message to a server;    -   sending the situational message to the server; and    -   receiving a personnel directive based on the activity message,        the situational message, and a user profile.

141. The method of embodiment 140, wherein the activity message andsituational message are bundled into a single message.

142. The method of embodiment 140, further comprising responding to thepersonnel directive with a relevance rating.

143. The method of embodiment 140, wherein the personnel directive isreceived on a mobile device.

144. The method of embodiment 140, wherein the activity message andsituational message are sent from a mobile device.

145. The method of embodiment 140, wherein the user activity informationis comprised of a code scanned by a mobile device.

146. The method of embodiment 140, wherein the user activity informationis comprised of an internet link chosen by a user.

147. The method of embodiment 140, wherein the user activity informationis comprised of user decisions within a virtual world.

148. The method of embodiment 140, wherein the user situationalinformation includes geographic location at a given time.

149. A processor-implemented method embodiment for coordinatingpersonnel based on delivered personnel directives, comprising:

-   -   accumulating user activity information;    -   accumulating user situational information;    -   analyzing the user activity interest information and user        situational information;    -   predicting expected user activity and situational information        from the analysis;    -   determining serving information to serve to a user based on        expected user activity and situational information;    -   selecting the information to serve from a database;    -   incorporating the selected information into a personnel        directive;    -   determining a target time and place to send the personnel        directive;    -   incorporating the personnel directive and target time and place        into a message; and    -   sending the message for distribution.

150. The method of embodiment 149, further, comprising:

-   -   querying and selecting the personnel directive from a database.

151. The method of embodiment 150, further, comprising:

-   -   incorporating the selected personnel directive into a message.

152. The method of embodiment 149, wherein the expected situationalinformation includes ambient conditions.

153. The method of embodiment 149, further comprising receiving arelevance rating of the distributed message.

154. The method of embodiment 149, wherein the message is sent to auser.

155. The method of embodiment 149, wherein the message is sent to adistribution system.

156. The method of embodiment 155, further, comprising:

-   -   querying and selecting the personnel directive to serve from a        database.

157. The method of embodiment 156, further, comprising:

-   -   incorporating the selected personnel directive into a message.

158. The method of embodiment 157, wherein the message includes thetarget place and time.

159. The method of embodiment 158, wherein the message includes thedetermined serving information.

160. The method of embodiment 159, wherein the distribution system mayuse the target place and time information to place a personnel directivefor a user to observe.

161. The method of embodiment 158, further, comprising:

-   -   querying and selecting the personnel directive to serve from a        database.

162. The method of embodiment 161, further, comprising:

-   -   incorporating the selected personnel directive into a placement        message.

163. The method of embodiment 162, wherein the distribution system mayuse the target place and time information and placement message to placepersonnel directives for a user to observe.

164. The method of embodiment 149, wherein the user situationalinformation is comprised of user space-time trajectories.

165. The method of embodiment 149, wherein the user situationalinformation is comprised of user web-surfing habits.

166. The method of embodiment 149, wherein the user situationalinformation is comprised of user trajectories in a virtual world.

167. The method of embodiment 149, wherein the personnel directiveserved to the user is sent to a mobile device.

168. The method of embodiment 149, wherein the personnel directiveserved to the user is served on a website.

169. The method of embodiment 149, wherein the personnel directiveserved to the user is served in a virtual world.

170. The method of embodiment 149, wherein the personnel directiveserved to the user is based on the user's geographic position.

171. The method of embodiment 149, wherein the personnel directiveserved to the user is based on the time.

172. The method of embodiment 149, wherein the personnel directive isbased on the user's employment status.

173. The method of embodiment 149, wherein the personnel directive isbased on the user's progress in accomplishing a series of tasks.

174. A processor-implemented method embodiment for selecting data from adatabase based on user activity information and employment status,comprising:

-   -   filtering data in the database by user employment status tags;    -   filtering data in the database by activity subject tags;    -   determining which remaining data match:        -   user geographic location tags;        -   user temporal tags;    -   selecting the data with the greatest number of matches; and    -   choosing a single datum from the remaining data.

175. The method of embodiment 174, wherein the data filtered by activitysubject tags are further matched to user subject interest tags.

176. The method of embodiment 174, wherein the data filtered by activitysubject tags are further matched to user demographic tags.

177. The method of embodiment 174, wherein the data filtered by activitysubject tags are further matched to user hardware identification tags.

178. The method of embodiment 174, wherein the data are personneldirectives.

179. A processor-implemented method embodiment for selecting data from adatabase based on employment status, subject, and time, comprising:

-   -   assigning the same initial score to every datum;    -   multiplying each datum's score by a status coefficient for every        match between the datum's employment status tag and employment        status tag in a user profile;    -   multiplying each datum's score by a subject coefficient for        every match between the datum's subject tag and subject tags in        a user profile;    -   multiplying each datum's score by a temporal coefficient for a        match between the datum's temporal tag and a temporal tag in a        user profile;    -   selecting the highest scoring data; and    -   selecting a single datum from the remaining data.

180. The method of embodiment 179, wherein each datum's score is furthermultiplied by a demographic coefficient for a match between the datum'sdemographic tags and demographic tags in a user profile.

181. The method of embodiment 179, wherein each datum's score is furthermultiplied by a geographic coefficient for a match between the datum'sgeographic tags and the geographic tags in a user profile.

182. The method of embodiment 179, wherein each datum's score is furthermultiplied by a hardware coefficient for a match between the datum'shardware identification tags and the hardware identification tags in auser profile.

183. The method of embodiment 179 wherein the data are personneldirectives.

184. A processor-implemented method embodiment for generating proximitynotifications indicating proximities between users, comprising:

-   -   accumulating user situational information;    -   accumulating user association information;    -   analyzing the user situational information;    -   predicting expected user interest and situational information        from the analysis;    -   determining if a user is in proximity with other users contained        in the user association information; and    -   notifying a user of the proximity.

185. The method of embodiment 184, wherein the user situationalinformation is comprised of user space-time trajectories.

186. The method of embodiment 184, wherein the user situationalinformation is comprised of user web surfing habits.

187. The method of embodiment 184, wherein the user situationalinformation is comprised of user trajectories in a virtual world.

188. The method of embodiment 184, further comprising notifying any ofthe other users of the proximity.

189. The method of embodiment 184, wherein the notification of proximityis further based on user profiles.

190. The method of embodiment 184, wherein the user situationalinformation is comprised of a location corresponding to a code scannedby a mobile device.

191. The method of embodiment 190, wherein the code is a matrix code andthe scanned by a mobile device comprises taking a picture of the matrixcode with a mobile device camera.

192. The method of embodiment 191 further comprising:

-   -   receiving an image of the scanned code at a server.

193. The method of embodiment 192, wherein the image of the scanned codewas sent via MMS.

194. The method of embodiment 193, wherein the message sent to the useris sent via MMS.

195. The method of embodiment 193, wherein the image of the scanned codewas sent to a short code address.

196. The method of embodiment 192, further comprising:

-   -   performing an image enhancement on the image of the scanned        code.

197. A processor-implemented method embodiment for serving informationto users within a virtual world based on accumulated user information,comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   associating the user activity interest information and user        situational information with a user profile;    -   updating the user profile with the associated information in a        database;    -   analyzing accumulated information associated with the user        profile;    -   querying an information database based on the analysis of the        user profile;    -   selecting information based on the user profile to include in a        message; and    -   serving the message in a virtual world.

198. The method of embodiment 197, wherein the information included inthe message sent to the user is selected based on a ranking.

199. The method of embodiment 197, further comprising receiving arelevance rating of the message sent to the user.

200. The method of embodiment 197, further comprising updating an Adprofile based on the user activity interest information and usersituational information.

201. The method of embodiment 197, wherein the information included inthe message sent to the user is selected based on ambient conditionswithin the virtual world.

202. The method of embodiment 197, further, comprising:

-   -   determining information to include in a message based on the        querying of the information database.

203. The method of embodiment 197, wherein the user situationalinformation includes geographic location.

204. The method of embodiment 203, wherein the user situationalinformation includes geographic location at a given time.

205. The method of embodiment 197, wherein the user situationalinformation includes location within a virtual world.

206. The method of embodiment 205, wherein the user situationalinformation includes location within a virtual world at a given time.

207. The method of embodiment 197, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

208. The method of embodiment 197, wherein the user activity interestinformation is comprised of an internet link chosen by the user.

209. The method of embodiment 197, wherein the user activity interestinformation is comprised of a user decision within a virtual world.

210. The method of embodiment 197, wherein the message sent to the useris sent to a mobile device.

211. A processor-implemented method embodiment for serving informationin a virtual world based on accumulated user information, comprising:

-   -   receiving messages from a user comprised of user identification,        a user decision within a virtual world, time of the decision,        and user location within the virtual world at the time of the        decision;    -   associating the user identification with a user profile in a        database;    -   updating the user profile with the received messages;    -   analyzing the accumulated messages in the user profile;    -   determining proper information to serve to the user based on the        received message and the user profile;    -   selecting the information to serve to the user from a database;    -   incorporating the selected information into a reply message; and    -   serving the reply message within the virtual world.

212. A processor-implemented method embodiment for receiving informationwithin a virtual world, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   incorporating user activity interest information in an interest        message;    -   incorporating user situational information in a situational        message;    -   sending the interest message to a server;    -   sending the situational message to the server; and    -   receiving a reply that is displayed within a virtual world based        on the interest message, the situational message, and a user        profile.

213. The method of embodiment 212, wherein the interest message andsituational message are bundled into a single message.

214. The method of embodiment 212, further comprising responding to thereply with a relevance rating.

215. The method of embodiment 212, wherein the reply is received on amobile device.

216. The method of embodiment 212, wherein the interest message andsituational message are sent from a mobile device.

217. The method of embodiment 212, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

218. The method of embodiment 212, wherein the user activity interestinformation is comprised of a user decision within a virtual world.

219. The method of embodiment 212, wherein the user situationalinformation includes geographic location at a given time.

220. The method of embodiment 212, wherein the user situationalinformation includes location within a virtual world at a given time.

221. A processor-implemented method embodiment for serving informationwithin a virtual world based on accumulated user information,comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   analyzing the user activity interest information and user        situational information;    -   predicting expected user interest and situational information        from the analysis;    -   determining serving information to serve to a user based on        expected user interest and situational information;    -   selecting the information to serve from a database;    -   incorporating the selected information into a message;    -   determining a target time and place to send a message;    -   incorporating serving information and target time and place into        a message; and    -   sending the message for distribution within a virtual world.

222. The method of embodiment 221, further, comprising:

-   -   querying and selecting the information to serve from a database.

223. The method of embodiment 222, further, comprising:

-   -   incorporating the selected information into a message.

224. The method of embodiment 221, wherein the expected situationalinformation includes ambient conditions within a virtual world.

225. The method of embodiment 221, further comprising receiving arelevance rating of the distributed message.

226. The method of embodiment 221, wherein the message is served to auser.

227. The method of embodiment 221, wherein the message is sent to anadvertising system.

228. The method of embodiment 227, further, comprising:

-   -   querying and selecting the information to serve from a database.

229. The method of embodiment 228, further, comprising:

-   -   incorporating the selected information into a message.

230. The method of embodiment 229, wherein the message includes thetarget location within a virtual world and time.

231. The method of embodiment 230, wherein the message includes thedetermined serving information.

232. The method of embodiment 231, wherein the advertising system mayuse the target location within a virtual world and time information toplace advertising for a user to observe.

233. The method of embodiment 230, further, comprising:

-   -   querying and selecting the information to serve from a database.

234. The method of embodiment 233, further, comprising:

-   -   incorporating the selected information into a placement message.

235. The method of embodiment 234, wherein the advertising system mayuse the target location within a virtual world and time information andplacement message to place advertising for a user to observe.

236. The method of embodiment 221, wherein the user situationalinformation is comprised of user space-time trajectories.

237. The method of embodiment 221, wherein the user situationalinformation is comprised of user trajectories within a virtual world.

238. The method of embodiment 221, wherein the information served to theuser is sent to a mobile device.

239. The method of embodiment 221, wherein the information served to theuser is based on the user's geographic position.

240. The method of embodiment 221, wherein the information served to theuser is based on the user's position within a virtual world.

241. The method of embodiment 221, wherein the information served to theuser is based on the time.

242. A processor-implemented method embodiment for selecting data from adatabase based on user virtual world activity interest and situationalinformation, comprising:

-   -   filtering data in the database by virtual world decision subject        tags;    -   determining which remaining data match:        -   user demographic category tags;        -   user virtual world location tags;        -   user temporal tags;    -   selecting the data with the greatest number of matches; and    -   choosing a single datum from the remaining data.

243. The method of embodiment 242, wherein the data filtered by websitesubject tags are further matched to user subject interest tags.

244. The method of embodiment 242, wherein the data are ads.

245. A processor-implemented method embodiment for selecting data from adatabase based on a virtual world location, comprising:

-   -   assigning the same initial score to every datum;    -   multiplying each datum's score by a subject coefficient for        every match between the datum's subject tag and subject tags in        a user profile;    -   multiplying each datum's score by a temporal coefficient for a        match between the datum's temporal tag and a temporal tag in a        user profile;    -   multiplying each datum's score by a demographic coefficient for        a match between the datum's demographic tags and demographic        tags in a user profile;    -   multiplying each datum's score by a virtual world location        coefficient for every match between the datum's virtual world        location tags and the virtual world location tags in the user        profile;    -   selecting the highest scoring data; and    -   selecting a single datum from the remaining data.

246. The method of embodiment 245 wherein the data are ads.

247. A processor-implemented method embodiment for tracking userinformation on the internet and serving information to users basedthereon, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   associating the user activity interest information and user        situational information with a user profile;    -   updating the user profile with the associated information in a        database;    -   analyzing accumulated information associated with the user        profile;    -   querying an information database based on the analysis of the        user profile;    -   selecting information based on the user profile to include in a        message; and    -   serving the message on a website.

248. The method of embodiment 247, wherein the information included inthe message sent to the user is selected based on a ranking.

249. The method of embodiment 247, further comprising receiving arelevance rating of the message sent to the user.

250. The method of embodiment 247, further comprising updating an Adprofile based on the user activity interest information and usersituational information.

251. The method of embodiment 247, wherein the information included inthe message sent to the user is selected based on ambient conditions.

252. The method of embodiment 247, further, comprising:

-   -   determining information to include in a message based on the        querying of the information database.

253. The method of embodiment 247, wherein the user situationalinformation includes geographic location.

254. The method of embodiment 253, wherein the user situationalinformation includes geographic location at a given time.

255. The method of embodiment 247, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

256. The method of embodiment 247, wherein the user activity interestinformation is comprised of an internet link chosen by the user.

257. The method of embodiment 247, wherein the message sent to the useris sent to a mobile device.

258. A processor-implemented method embodiment for tracking userinformation on the internet and serving information to a mobile devicebased thereon, comprising:

-   -   receiving messages from a user comprised of user identification,        mobile device identification, a code scanned by the mobile        device, time of the scan, and user geographic location at the        time of the scan;    -   associating the user identification with a user profile in a        database;    -   updating the user profile with the received messages;    -   analyzing the accumulated messages in the user profile;    -   determining proper information to serve to the user based on the        received message and the user profile;    -   selecting the information to serve to the user from a database;    -   incorporating the selected information into a reply message; and    -   serving the reply message on a website.

259. A processor-implemented method embodiment for receiving informationon the internet based on accumulated user information, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   incorporating user activity interest information in an interest        message;    -   incorporating user situational information in a situational        message;    -   sending the interest message to a server;    -   sending the situational message to the server; and    -   receiving a reply that is displayed on a website based on the        interest message, the situational message, and a user profile.

260. The method of embodiment 259, wherein the interest message andsituational message are bundled into a single message.

261. The method of embodiment 259, further comprising responding to thereply with a relevance rating.

262. The method of embodiment 259, wherein the reply is received on amobile device.

263. The method of embodiment 259, wherein the interest message andsituational message are sent from a mobile device.

264. The method of embodiment 259, wherein the user activity interestinformation is comprised of a code scanned by a mobile device.

265. The method of embodiment 259, wherein the user activity interestinformation is comprised of an internet link chosen by a user.

266. The method of embodiment 259, wherein the user situationalinformation includes geographic location at a given time.

267. A processor-implemented method embodiment for serving informationon a website based on accumulated user information, comprising:

-   -   accumulating user activity interest information;    -   accumulating user situational information;    -   analyzing the user activity interest information and user        situational information;    -   predicting expected user interest and situational information        from the analysis;    -   determining serving information to serve to a user based on        expected user interest and situational information;    -   selecting the information to serve from a database;    -   incorporating the selected information into a message;    -   determining a target time and place to send a message;    -   incorporating serving information and target time and place into        a message; and    -   sending the message for distribution on a website.

268. The method of embodiment 267, further, comprising:

-   -   querying and selecting the information to serve from a database.

269. The method of embodiment 268, further, comprising:

-   -   incorporating the selected information into a message.

270. The method of embodiment 267, wherein the expected situationalinformation includes ambient conditions.

271. The method of embodiment 267, further comprising receiving arelevance rating of the distributed message.

272. The method of embodiment 267, wherein the message is served to auser.

273. The method of embodiment 267, wherein the message is sent to anadvertising system.

274. The method of embodiment 273, further, comprising:

-   -   querying and selecting the information to serve from a database.

275. The method of embodiment 274, further, comprising:

-   -   incorporating the selected information into a message.

276. The method of embodiment 275, wherein the message includes thetarget place and time.

277. The method of embodiment 276, wherein the message includes thedetermined serving information.

278. The method of embodiment 277, wherein the advertising system mayuse the target place and time information to place advertising for auser to observe.

279. The method of embodiment 276, further, comprising:

-   -   querying and selecting the information to serve from a database.

280. The method of embodiment 279, further, comprising:

-   -   incorporating the selected information into a placement message.

281. The method of embodiment 280, wherein the advertising system mayuse the target place and time information and placement message to placeadvertising for a user to observe.

282. The method of embodiment 267, wherein the user situationalinformation is comprised of user space-time trajectories.

283. The method of embodiment 267, wherein the user situationalinformation is comprised of user web-surfing habits.

284. The method of embodiment 267, wherein the information served to theuser is sent to a mobile device.

285. The method of embodiment 267, wherein the information served to theuser is based on the user's geographic position.

286. The method of embodiment 267, wherein the information served to theuser is based on the time.

287. A processor-implemented method embodiment for selecting data from adatabase based on user website interest information, comprising:

-   -   filtering data in the database by website subject tags;    -   determining which remaining data match:        -   user demographic category tags;        -   user current website tags;        -   user temporal tags;    -   selecting the data with the greatest number of matches; and    -   choosing a single datum from the remaining data.

288. The method of embodiment 287, wherein the data filtered by websitesubject tags are further matched to user subject interest tags.

289. The method of embodiment 287, wherein the data filtered by websitesubject tags are further matched to user hardware identification tags.

290. The method of embodiment 287, wherein the data are ads.

291. A processor-implemented method embodiment for selecting data from adatabase based on correlations between a user profile and a datum'swebsite association, comprising:

-   -   assigning the same initial score to every datum;    -   multiplying each datum's score by a subject coefficient for        every match between the datum's subject tag and subject tags in        a user profile;    -   multiplying each datum's score by a temporal coefficient for a        match between the datum's temporal tag and a temporal tag in a        user profile;    -   multiplying each datum's score by a demographic coefficient for        a match between the datum's demographic tags and demographic        tags in a user profile;    -   multiplying each datum's score by a website coefficient for        every match between the datum's website tags and the website        tags in the user profile;    -   selecting the highest scoring data; and    -   selecting a single datum from the remaining data.

292. The method of embodiment 291, wherein each datum's score is furthermultiplied by a hardware coefficient for every match between the datum'shardware identification tags and the hardware identification tags in auser profile.

293. The method of embodiment 291 wherein the data are ads.

294. A processor implemented method embodiment for processing andresponding to ambiguous content requests, comprising:

-   -   receiving a scanned code image and a user ID;    -   analyzing the scanned code image to determine if the information        encoded therein is fully accessible;    -   selecting a scanned code disambiguation process to apply to the        scanned code images if the information encoded therein is not        fully accessible;    -   applying the scanned code disambiguation process to the scanned        code image to determine a most likely code;    -   querying accumulated user information in a user profile        associated with the user ID;    -   querying a content database to extract requested content based        on the most likely code and the accumulated user information;        and    -   sending the requested content to a user.

295. The method of embodiment 294, wherein the received scanned codeimage is sent via MMS.

296. The method of embodiment 295, wherein the received scan code imageis sent to a short code address.

297. The method of embodiment 296, wherein the requested content is setto a user via MMS.

298. The method of embodiment 294, wherein the scanned codedisambiguation process comprises:

-   -   performing a partial decoding of the scanned code image;    -   querying a code database to select a plurality of codes matching        the partial decoding of the scanned code image; and    -   selecting a most likely code from the plurality of codes based        on ancillary scanned code information.

299. The method of embodiment 298, wherein the ancillary scanned codeinformation comprises the accumulated user information.

300. The method of embodiment 299, wherein the ancillary scanned codeinformation further comprises situational information associated withthe scanned code image.

301. The method of embodiment 298, wherein the ancillary scanned codeinformation comprises situational information associated with thescanned code image.

302. The method of embodiment 301, wherein the situational informationcomprises a context from which the scanned code image was acquired.

303. The method of embodiment 301, wherein the situational informationcomprises a location at which the scanned code image was acquired.

304. The method of embodiment 294, wherein the scanned codedisambiguation process comprises a scanned code image enhancement.

305. The method of embodiment 304, wherein the scanned code imageenhancement is configurable to perform downsizing, noise removal,contrast adjustment, brightness adjustment, image tilting, imagerotating, focus adjustment, and edge recognition.

306. The method of embodiment 294, wherein the scanned codedisambiguation process is a server-side process.

307. The method of embodiment 294, wherein the scanned codedisambiguation process is a client-side process.

308. A processor implemented method embodiment for processing andresponding to ambiguous content requests, comprising:

-   -   receiving a scanned code image, a user ID, wherein the scanned        code image is sent to a short code address via MMS.    -   analyzing the scanned code image to determine if the information        encoded therein is fully accessible;    -   selecting a server-side scanned code disambiguation process to        apply to the scanned code images if the information encoded        therein is not fully accessible, wherein the scanned code        disambiguation process comprises any combination of scanned code        image enhancement and partial decoding;    -   applying the server-side scanned code disambiguation process to        the scanned code image to determine a most likely code;    -   querying accumulated user information in a user profile        associated with the user ID;    -   querying a content database to extract requested content based        on the most likely code and the accumulated user information;        and    -   sending the requested content to a user via MMS.

309. An apparatus embodiment for serving ambient condition sensitiveinformation to a mobile user, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile and ambient            conditions at a user location to include in a message; and        -   send the message to a user.

310. An apparatus embodiment for serving ambient condition sensitiveinformation to a mobile user, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   receive at a server messages from a user comprised of user            identification, mobile device identification, a code image            scanned by the mobile device, time of the scan, and user            geographic location at the time of the scan, wherein the            messages were sent to a short code address via MMS;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   enhance the code image scanned by the mobile device;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message, the user profile, and ambient            conditions at a user location;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a reply message;            and        -   send the reply message to the user's mobile device via MMS.

311. An apparatus embodiment for receiving ambient condition sensitiveinformation, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information, including ambient            conditions at a user location;        -   incorporate user activity interest information in an            interest message;        -   incorporate user situational information in a situational            message;        -   sending the interest message to a server;        -   sending the situational message to the server; and        -   receive a reply based on the interest message, the            situational message, and a user profile.

312. An apparatus embodiment of serving ambient condition sensitiveinformation, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest information, expected user            situational information, and ambient conditions at a user            location;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution.

313. An apparatus embodiment for accumulating user information anddelivering targeted content based thereon, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile to include in a            message; and        -   send the message to a user.

314. An apparatus embodiment for accumulating mobile device code scaninformation from a user and delivering content based thereon,comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   receive at a server messages from a user comprised of user            identification, mobile device identification, a code image            scanned by the mobile device, time of the scan, and user            geographic location at the time of the scan, wherein the            messages were sent to a shortcode address via MMS;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   enhance the code image scanned by the mobile device;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message and the user profile;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a reply message;            and        -   send the reply message to the user's mobile device via MMS.

315. An apparatus embodiment for receiving information based onaccumulated user activity and situational information, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information; accumulate            user situational information;        -   incorporate user activity interest information in an            interest message;        -   incorporate user situational information in a situational            message;        -   send the interest message to a server;        -   send the situational message to the server; and        -   receive a reply based on the interest message, the            situational message, and a user profile.

316. An apparatus embodiment of selecting data from a database based onuser activity interest information, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   filter data in the database by activity subject tags;        -   determine which remaining data match:            -   user demographic category tags;            -   user geographic location tags;            -   user temporal tags;        -   select the data with the greatest number of matches; and        -   choose a single datum from the remaining data.

317. An apparatus embodiment for predicting user interest and situationsand supplying information to the user based thereon, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution.

318. An apparatus embodiment for predicting user interest and situationsand supplying information to the user based thereon, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate at a server a plurality of code images scanned by            a user's mobile device and sent to a short code address via            MMS;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution via MMS.

319. An apparatus embodiment for scoring data based on a user profileand situational information and selecting data from a database,comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   assign the same initial score to every datum;        -   multiply each datum's score by a subject coefficient for            every match between the datum's subject tag and subject tags            in a user profile;        -   multiply each datum's score by a temporal coefficient for a            match between the datum's temporal tag and a temporal tag in            a user profile;        -   multiply each datum's score by a demographic coefficient for            a match between the datum's demographic tags and demographic            tags in a user profile;        -   select the highest scoring data; and        -   select a single datum from the remaining data.

320. An apparatus embodiment for coordinating personnel based ondelivered personnel directives, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile to include in a            personnel directive; and        -   send the personnel directive to a user.

321. An apparatus embodiment for coordinating personnel by servingpersonnel directives to a mobile device, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   receive at a server messages from a user comprised of user            identification, mobile device identification, a code image            scanned by the mobile device, time of the scan, and user            geographic location at the time of the scan, wherein the            messages are sent to a short code address via MMS;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   enhance the code image scanned by the mobile device;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message and the user profile;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a personnel            directive; and        -   send the personnel directive to the user's mobile device via            MMS.

322. An apparatus embodiment for receiving personnel directives,comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity information;        -   accumulate user situational information;        -   incorporate user activity information in an activity            message;        -   incorporate user situational information in a situational            message;        -   send the activity message to a server;        -   send the situational message to the server; and        -   receive a personnel directive based on the activity message,            the situational message, and a user profile.

323. An apparatus embodiment for coordinating personnel based ondelivered personnel directives, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user activity and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user activity and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a personnel            directive;        -   determine a target time and place to send the personnel            directive;        -   incorporate the personnel directive and target time and            place into a message; and        -   send the message for distribution.

324. An apparatus embodiment for selecting data from a database based onuser activity information and employment status, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   filter data in the database by user employment status tags;        -   filter data in the database by activity subject tags;        -   determine which remaining data match:            -   user geographic location tags;            -   user temporal tags;        -   select the data with the greatest number of matches; and        -   choose a single datum from the remaining data.

325. An apparatus embodiment for selecting data from a database based onemployment status, subject, and time, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   assign the same initial score to every datum;        -   multiply each datum's score by a status coefficient for            every match between the datum's employment status tag and            employment status tag in a user profile;        -   multiply each datum's score by a subject coefficient for            every match between the datum's subject tag and subject tags            in a user profile;        -   multiply each datum's score by a temporal coefficient for a            match between the datum's temporal tag and a temporal tag in            a user profile; select the highest scoring data; and        -   select a single datum from the remaining data.

326. An apparatus embodiment for generating proximity notificationsindicating proximities between users, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user situational information;        -   accumulate user association information;        -   analyze the user situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine if a user is in proximity with other users            contained in the user association information; and        -   notify a user of the proximity.

327. An apparatus embodiment for serving information to users within avirtual world based on accumulated user information, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile to include in a            message; and        -   serve the message in a virtual world.

328. An apparatus embodiment for serving information in a virtual worldbased on accumulated user information, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   receive messages from a user comprised of user            identification, a user decision within a virtual world, time            of the decision, and user location within the virtual world            at the time of the decision;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message and the user profile;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a reply message;            and        -   serve the reply message within the virtual world.

329. An apparatus embodiment for receiving information within a virtualworld, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   incorporate user activity interest information in an            interest message;        -   incorporate user situational information in a situational            message;        -   send the interest message to a server;        -   send the situational message to the server; and        -   receive a reply that is displayed within a virtual world            based on the interest message, the situational message, and            a user profile.

330. An apparatus embodiment for serving information within a virtualworld based on accumulated user information, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution within a virtual world.

331. An apparatus embodiment for selecting data from a database based onuser virtual world activity interest and situational information,comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   filter data in the database by virtual world decision            subject tags;        -   determine which remaining data match:            -   user demographic category tags;            -   user virtual world location tags;            -   user temporal tags;        -   select the data with the greatest number of matches; and        -   choose a single datum from the remaining data.

332. An apparatus embodiment for selecting data from a database based ona virtual world location, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   assign the same initial score to every datum;        -   multiply each datum's score by a subject coefficient for            every match between the datum's subject tag and subject tags            in a user profile;        -   multiply each datum's score by a temporal coefficient for a            match between the datum's temporal tag and a temporal tag in            a user profile;        -   multiply each datum's score by a demographic coefficient for            a match between the datum's demographic tags and demographic            tags in a user profile;        -   multiply each datum's score by a virtual world location            coefficient for every match between the datum's virtual            world location tags and the virtual world location tags in            the user profile;        -   select the highest scoring data; and        -   select a single datum from the remaining data.

333. An apparatus embodiment for tracking user information on theinternet and serving information to users based thereon, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile to include in a            message; and        -   serve the message on a website.

334. An apparatus embodiment for tracking user information on theinternet and serving information to a mobile device based thereon,comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   receive messages from a user comprised of user            identification, mobile device identification, a code scanned            by the mobile device, time of the scan, and user geographic            location at the time of the scan;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message and the user profile;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a reply message;            and        -   serve the reply message on a website.

335. An apparatus embodiment for receiving information on the internetbased on accumulated user information, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   incorporate user activity interest information in an            interest message;        -   incorporate user situational information in a situational            message;        -   send the interest message to a server;        -   send the situational message to the server; and        -   receive a reply that is displayed on a website based on the            interest message, the situational message, and a user            profile.

336. An apparatus embodiment for serving information on a website basedon accumulated user information, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution on a website.

337. An apparatus embodiment for selecting data from a database based onuser website interest information, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   filter data in the database by website subject tags;        -   determine which remaining data match:            -   user demographic category tags;            -   user current website tags;            -   user temporal tags;        -   select the data with the greatest number of matches; and        -   choose a single datum from the remaining data.

338. An apparatus embodiment for selecting data from a database based oncorrelations between a user profile and a datum's website association,comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   assign the same initial score to every datum;        -   multiply each datum's score by a subject coefficient for            every match between the datum's subject tag and subject tags            in a user profile;        -   multiply each datum's score by a temporal coefficient for a            match between the datum's temporal tag and a temporal tag in            a user profile;        -   multiply each datum's score by a demographic coefficient for            a match between the datum's demographic tags and demographic            tags in a user profile;        -   multiply each datum's score by a website coefficient for            every match between the datum's website tags and the website            tags in the user profile;        -   select the highest scoring data; and        -   select a single datum from the remaining data.

339. An apparatus embodiment for processing and responding to ambiguouscontent requests, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   receive a scanned code image and a user ID;        -   analyze the scanned code image to determine if the            information encoded therein is fully accessible;        -   select a scanned code disambiguation process to apply to the            scanned code images if the information encoded therein is            not fully accessible;        -   apply the scanned code disambiguation process to the scanned            code image to determine a most likely code;        -   query accumulated user information in a user profile            associated with the user ID;        -   query a content database to extract requested content based            on the most likely code and the accumulated user            information; and        -   send the requested content to a user.

340. An apparatus embodiment for processing and responding to ambiguouscontent requests, comprising:

-   -   a memory;    -   a processor disposed in communication with said memory, and        configured to issue a plurality of instructions stored in the        memory, wherein the instructions are issuable to:        -   receive a scanned code image, a user ID, wherein the scanned            code image is sent to a short code address via MMS.        -   analyze the scanned code image to determine if the            information encoded therein is fully accessible;        -   select a server-side scanned code disambiguation process to            apply to the scanned code images if the information encoded            therein is not fully accessible, wherein the scanned code            disambiguation process comprises any combination of scanned            code image enhancement and partial decoding;        -   apply the server-side scanned code disambiguation process to            the scanned code image to determine a most likely code;        -   query accumulated user information in a user profile            associated with the user ID;        -   query a content database to extract requested content based            on the most likely code and the accumulated user            information; and        -   send the requested content to a user via MMS.

341. A system embodiment for serving ambient condition sensitiveinformation to a mobile user, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to associate the user activity interest information and        user situational information with a user profile;    -   means to update the user profile with the associated information        in a database;    -   means to analyze accumulated information associated with the        user profile;    -   means to query an information database based on the analysis of        the user profile;    -   means to select information based on the user profile and        ambient conditions at a user location to include in a message;        and    -   means to send the message to a user.

342. A system embodiment for serving ambient condition sensitiveinformation to a mobile user, comprising:

-   -   means to receive at a server messages from a user comprised of        user identification, mobile device identification, a code image        scanned by the mobile device, time of the scan, and user        geographic location at the time of the scan, wherein the        messages were sent to a short code address via MMS;    -   means to associate the user identification with a user profile        in a database;    -   means to update the user profile with the received messages;    -   means to enhance the code image scanned by the mobile device;    -   means to analyze the accumulated messages in the user profile;    -   means to determine proper information to serve to the user based        on the received message, the user profile, and ambient        conditions at a user location;    -   means to select the information to serve to the user from a        database;    -   means to incorporate the selected information into a reply        message; and    -   means to send the reply message to the user's mobile device via        MMS.

343. A system embodiment for receiving ambient condition sensitiveinformation, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information, including        ambient conditions at a user location;    -   means to incorporate user activity interest information in an        interest message;    -   means to incorporate user situational information in a        situational message;    -   means to sending the interest message to a server;    -   means to sending the situational message to the server; and    -   means to receive a reply based on the interest message, the        situational message, and a user profile.

344. A system embodiment of serving ambient condition sensitiveinformation, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to analyze the user activity interest information and user        situational information;    -   means to predict expected user interest and situational        information from the analysis;    -   means to determine serving information to serve to a user based        on expected user interest information, expected user situational        information, and ambient conditions at a user location;    -   means to select the information to serve from a database;    -   means to incorporate the selected information into a message;    -   means to determine a target time and place to send a message;    -   means to incorporate serving information and target time and        place into a message; and    -   means to send the message for distribution.

345. A system embodiment for accumulating user information anddelivering targeted content based thereon, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information; means to        associate the user activity interest information and user        situational information with a user profile;    -   means to update the user profile with the associated information        in a database;    -   means to analyze accumulated information associated with the        user profile;    -   means to query an information database based on the analysis of        the user profile;    -   means to select information based on the user profile to include        in a message; and    -   means to send the message to a user.

346. A system embodiment for accumulating mobile device code scaninformation from a user and delivering content based thereon,comprising:

-   -   means to receive at a server messages from a user comprised of        user identification, mobile device identification, a code image        scanned by the mobile device, time of the scan, and user        geographic location at the time of the scan, wherein the        messages were sent to a short code address via MMS;    -   means to associate the user identification with a user profile        in a database;    -   means to update the user profile with the received messages;    -   means to enhance the code image scanned by the mobile device;    -   means to analyze the accumulated messages in the user profile;    -   means to determine proper information to serve to the user based        on the received message and the user profile;    -   means to select the information to serve to the user from a        database;    -   means to incorporate the selected information into a reply        message; and    -   means to send the reply message to the user's mobile device via        MMS.

347. A system embodiment for receiving information based on accumulateduser activity and situational information, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to incorporate user activity interest information in an        interest message;    -   means to incorporate user situational information in a        situational message;    -   means to send the interest message to a server;    -   means to send the situational message to the server; and    -   means to receive a reply based on the interest message, the        situational message, and a user profile.

348. A system embodiment of selecting data from a database based on useractivity interest information, comprising:

-   -   means to filter data in the database by activity subject tags;    -   means to determine which remaining data match:        -   user demographic category tags;        -   user geographic location tags;        -   user temporal tags;    -   means to select the data with the greatest number of matches;        and    -   means to choose a single datum from the remaining data.

349. A system embodiment for predicting user interest and situations andsupplying information to the user based thereon, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to analyze the user activity interest information and user        situational information;    -   means to predict expected user interest and situational        information from the analysis;    -   means to determine serving information to serve to a user based        on expected user interest and situational information;    -   means to select the information to serve from a database;    -   means to incorporate the selected information into a message;    -   means to determine a target time and place to send a message;    -   means to incorporate serving information and target time and        place into a message; and    -   means to send the message for distribution.

350. A system embodiment for predicting user interest and situations andsupplying information to the user based thereon, comprising:

-   -   means to accumulate at a server a plurality of code images        scanned by a user's mobile device and sent to a short code        address via MMS;    -   means to accumulate user situational information;    -   means to analyze the user activity interest information and user        situational information;    -   means to predict expected user interest and situational        information from the analysis; means to determine serving        information to serve to a user based on expected user interest        and situational information;    -   means to select the information to serve from a database;    -   means to incorporate the selected information into a message;    -   means to determine a target time and place to send a message;    -   means to incorporate serving information and target time and        place into a message; and    -   means to send the message for distribution via MMS.

351. A system embodiment for scoring data based on a user profile andsituational information and selecting data from a database, comprising:

-   -   means to assign the same initial score to every datum;    -   means to multiply each datum's score by a subject coefficient        for every match between the datum's subject tag and subject tags        in a user profile;    -   means to multiply each datum's score by a temporal coefficient        for a match between the datum's temporal tag and a temporal tag        in a user profile;    -   means to multiply each datum's score by a demographic        coefficient for a match between the datum's demographic tags and        demographic tags in a user profile;    -   means to select the highest scoring data; and    -   means to select a single datum from the remaining data.

352. A system embodiment for coordinating personnel based on deliveredpersonnel directives, comprising:

-   -   means to accumulate user activity information;    -   means to accumulate user situational information; means to        associate the user activity interest information and user        situational information with a user profile;    -   means to update the user profile with the associated information        in a database;    -   means to analyze accumulated information associated with the        user profile;    -   means to query an information database based on the analysis of        the user profile;    -   means to select information based on the user profile to include        in a personnel directive; and    -   means to send the personnel directive to a user.

353. A system embodiment for coordinating personnel by serving personneldirectives to a mobile device, comprising:

-   -   means to receive at a server messages from a user comprised of        user identification, mobile device identification, a code image        scanned by the mobile device, time of the scan, and user        geographic location at the time of the scan, wherein the        messages are sent to a short code address via MMS;    -   means to associate the user identification with a user profile        in a database;    -   means to update the user profile with the received messages;    -   means to enhance the code image scanned by the mobile device;    -   means to analyze the accumulated messages in the user profile;    -   means to determine proper information to serve to the user based        on the received message and the user profile;    -   means to select the information to serve to the user from a        database;    -   means to incorporate the selected information into a personnel        directive; and means to send the personnel directive to the        user's mobile device via MMS.

354. A system embodiment for receiving personnel directives, comprising:

-   -   means to accumulate user activity information;    -   means to accumulate user situational information;    -   means to incorporate user activity information in an activity        message;    -   means to incorporate user situational information in a        situational message;    -   means to send the activity message to a server;    -   means to send the situational message to the server; and    -   means to receive a personnel directive based on the activity        message, the situational message, and a user profile.

355. A system embodiment for coordinating personnel based on deliveredpersonnel directives, comprising:

-   -   means to accumulate user activity information;    -   means to accumulate user situational information;    -   means to analyze the user activity interest information and user        situational information;    -   means to predict expected user activity and situational        information from the analysis;    -   means to determine serving information to serve to a user based        on expected user activity and situational information;    -   means to select the information to serve from a database;    -   means to incorporate the selected information into a personnel        directive;    -   means to determine a target time and place to send the personnel        directive;    -   means to incorporate the personnel directive and target time and        place into a message; and    -   means to send the message for distribution.

356. A system embodiment for selecting data from a database based onuser activity information and employment status, comprising:

-   -   means to filter data in the database by user employment status        tags;    -   means to filter data in the database by activity subject tags;    -   means to determine which remaining data match:        -   user geographic location tags;        -   user temporal tags;    -   means to select the data with the greatest number of matches;        and    -   means to choose a single datum from the remaining data.

357. A system embodiment for selecting data from a database based onemployment status, subject, and time, comprising:

-   -   means to assign the same initial score to every datum;    -   means to multiply each datum's score by a status coefficient for        every match between the datum's employment status tag and        employment status tag in a user profile;    -   means to multiply each datum's score by a subject coefficient        for every match between the datum's subject tag and subject tags        in a user profile;    -   means to multiply each datum's score by a temporal coefficient        for a match between the datum's temporal tag and a temporal tag        in a user profile;    -   means to select the highest scoring data; and    -   means to select a single datum from the remaining data.

358. A system embodiment for generating proximity notificationsindicating proximities between users, comprising:

-   -   means to accumulate user situational information;    -   means to accumulate user association information;    -   means to analyze the user situational information;    -   means to predict expected user interest and situational        information from the analysis;    -   means to determine if a user is in proximity with other users        contained in the user association information; and    -   means to notify a user of the proximity.

359. A system embodiment for serving information to users within avirtual world based on accumulated user information, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to associate the user activity interest information and        user situational information with a user profile;    -   means to update the user profile with the associated information        in a database;    -   means to analyze accumulated information associated with the        user profile;    -   means to query an information database based on the analysis of        the user profile;    -   means to select information based on the user profile to include        in a message; and    -   means to serve the message in a virtual world.

360. A system embodiment for serving information in a virtual worldbased on accumulated user information, comprising:

-   -   means to receive messages from a user comprised of user        identification, a user decision within a virtual world, time of        the decision, and user location within the virtual world at the        time of the decision;    -   means to associate the user identification with a user profile        in a database;    -   means to update the user profile with the received messages;    -   means to analyze the accumulated messages in the user profile;    -   means to determine proper information to serve to the user based        on the received message and the user profile;    -   means to select the information to serve to the user from a        database;    -   means to incorporate the selected information into a reply        message; and    -   means to serve the reply message within the virtual world.

361. A system embodiment for receiving information within a virtualworld, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to incorporate user activity interest information in an        interest message;    -   means to incorporate user situational information in a        situational message;    -   means to send the interest message to a server;    -   means to send the situational message to the server; and    -   means to receive a reply that is displayed within a virtual        world based on the interest message, the situational message,        and a user profile.

362. A system embodiment for serving information within a virtual worldbased on accumulated user information, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to analyze the user activity interest information and user        situational information;    -   means to predict expected user interest and situational        information from the analysis;    -   means to determine serving information to serve to a user based        on expected user interest and situational information;    -   means to select the information to serve from a database;    -   means to incorporate the selected information into a message;    -   means to determine a target time and place to send a message;    -   means to incorporate serving information and target time and        place into a message; and    -   means to send the message for distribution within a virtual        world.

363. A system embodiment for selecting data from a database based onuser virtual world activity interest and situational information,comprising:

-   -   means to filter data in the database by virtual world decision        subject tags;    -   means to determine which remaining data match:        -   user demographic category tags;        -   user virtual world location tags;        -   user temporal tags;    -   means to select the data with the greatest number of matches;        and    -   means to choose a single datum from the remaining data.

364. A system embodiment for selecting data from a database based on avirtual world location, comprising:

-   -   means to assign the same initial score to every datum;    -   means to multiply each datum's score by a subject coefficient        for every match between the datum's subject tag and subject tags        in a user profile;    -   means to multiply each datum's score by a temporal coefficient        for a match between the datum's temporal tag and a temporal tag        in a user profile;    -   means to multiply each datum's score by a demographic        coefficient for a match between the datum's demographic tags and        demographic tags in a user profile;    -   means to multiply each datum's score by a virtual world location        coefficient for every match between the datum's virtual world        location tags and the virtual world location tags in the user        profile;    -   means to select the highest scoring data; and    -   means to select a single datum from the remaining data.

365. A system embodiment for tracking user information on the internetand serving information to users based thereon, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to associate the user activity interest information and        user situational information with a user profile;    -   means to update the user profile with the associated information        in a database; means to analyze accumulated information        associated with the user profile;    -   means to query an information database based on the analysis of        the user profile;    -   means to select information based on the user profile to include        in a message; and    -   means to serve the message on a website.

366. A system embodiment for tracking user information on the internetand serving information to a mobile device based thereon, comprising:

-   -   means to receive messages from a user comprised of user        identification, mobile device identification, a code scanned by        the mobile device, time of the scan, and user geographic        location at the time of the scan;    -   means to associate the user identification with a user profile        in a database; update the user profile with the received        messages;    -   means to analyze the accumulated messages in the user profile;    -   means to determine proper information to serve to the user based        on the received message and the user profile;    -   means to select the information to serve to the user from a        database;    -   means to incorporate the selected information into a reply        message; and    -   means to serve the reply message on a website.

367. A system embodiment for receiving information on the internet basedon accumulated user information, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information; means to        incorporate user activity interest information in an interest        message;    -   means to incorporate user situational information in a        situational message;    -   means to send the interest message to a server;    -   means to send the situational message to the server; and    -   means to receive a reply that is displayed on a website based on        the interest message, the situational message, and a user        profile.

368. A system embodiment for serving information on a website based onaccumulated user information, comprising:

-   -   means to accumulate user activity interest information;    -   means to accumulate user situational information;    -   means to analyze the user activity interest information and user        situational information;    -   means to predict expected user interest and situational        information from the analysis;    -   means to determine serving information to serve to a user based        on expected user interest and situational information;    -   means to select the information to serve from a database;    -   means to incorporate the selected information into a message;    -   means to determine a target time and place to send a message;    -   means to incorporate serving information and target time and        place into a message; and    -   means to send the message for distribution on a website.

369. A system embodiment for selecting data from a database based onuser website interest information, comprising:

-   -   means to filter data in the database by website subject tags;    -   means to determine which remaining data match: user demographic        category tags; user current website tags; user temporal tags;    -   means to select the data with the greatest number of matches;        and    -   means to choose a single datum from the remaining data.

370. A system embodiment for selecting data from a database based oncorrelations between a user profile and a datum's website association,comprising:

-   -   means to assign the same initial score to every datum;    -   means to multiply each datum's score by a subject coefficient        for every match between the datum's subject tag and subject tags        in a user profile;    -   means to multiply each datum's score by a temporal coefficient        for a match between the datum's temporal tag and a temporal tag        in a user profile;    -   means to multiply each datum's score by a demographic        coefficient for a match between the datum's demographic tags and        demographic tags in a user profile;    -   means to multiply each datum's score by a website coefficient        for every match between the datum's website tags and the website        tags in the user profile;    -   means to select the highest scoring data; and    -   means to select a single datum from the remaining data.

371. A system embodiment for processing and responding to ambiguouscontent requests, comprising:

-   -   means to receive a scanned code image and a user ID;    -   means to analyze the scanned code image to determine if the        information encoded therein is fully accessible;    -   means to select a scanned code disambiguation process to apply        to the scanned code images if the information encoded therein is        not fully accessible;    -   means to apply the scanned code disambiguation process to the        scanned code image to determine a most likely code;    -   means to query accumulated user information in a user profile        associated with the user ID;    -   means to query a content database to extract requested content        based on the most likely code and the accumulated user        information; and    -   means to send the requested content to a user.

372. An system for processing and responding to ambiguous contentrequests, comprising:

-   -   means to receive a scanned code image, a user ID, wherein the        scanned code image is sent to a short code address via MMS.    -   means to analyze the scanned code image to determine if the        information encoded therein is fully accessible; means to select        a server-side scanned code disambiguation process to apply to        the scanned code images if the information encoded therein is        not fully accessible, wherein the scanned code disambiguation        process comprises any combination of scanned code image        enhancement and partial decoding;    -   means to apply the server-side scanned code disambiguation        process to the scanned code image to determine a most likely        code;    -   means to query accumulated user information in a user profile        associated with the user ID;    -   means to query a content database to extract requested content        based on the most likely code and the accumulated user        information; and    -   means to send the requested content to a user via MMS.

373. A processor-accessible medium embodiment for serving ambientcondition sensitive information to a mobile user, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile and ambient            conditions at a user location to include in a message; and        -   send the message to a user.

374. A processor-accessible medium embodiment for serving ambientcondition sensitive information to a mobile user, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   receive at a server messages from a user comprised of user            identification, mobile device identification, a code image            scanned by the mobile device, time of the scan, and user            geographic location at the time of the scan, wherein the            messages were sent to a short code address via MMS;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   enhance the code image scanned by the mobile device;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message, the user profile, and ambient            conditions at a user location;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a reply message;            and        -   send the reply message to the user's mobile device via MMS.

375. A processor-accessible medium embodiment for receiving ambientcondition sensitive information, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information, including ambient            conditions at a user location;        -   incorporate user activity interest information in an            interest message;        -   incorporate user situational information in a situational            message;        -   sending the interest message to a server;        -   sending the situational message to the server; and        -   receive a reply based on the interest message, the            situational message, and a user profile.

376. A processor-accessible medium embodiment of serving ambientcondition sensitive information, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest information, expected user            situational information, and ambient conditions at a user            location;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution.

377. A processor-accessible medium embodiment for accumulating userinformation and delivering targeted content based thereon, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile to include in a            message; and        -   send the message to a user.

378. A processor-accessible medium embodiment for accumulating mobiledevice code scan information from a user and delivering content basedthereon, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   receive at a server messages from a user comprised of user            identification, mobile device identification, a code image            scanned by the mobile device, time of the scan, and user            geographic location at the time of the scan, wherein the            messages were sent to a shortcode address via MMS;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   enhance the code image scanned by the mobile device;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message and the user profile;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a reply message;            and        -   send the reply message to the user's mobile device via MMS.

379. A processor-accessible medium embodiment for receiving informationbased on accumulated user activity and situational information,comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   incorporate user activity interest information in an            interest message;        -   incorporate user situational information in a situational            message;        -   send the interest message to a server;        -   send the situational message to the server; and        -   receive a reply based on the interest message, the            situational message, and a user profile.

380. A processor-accessible medium embodiment of selecting data from adatabase based on user activity interest information, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   filter data in the database by activity subject tags;        -   determine which remaining data match:            -   user demographic category tags;            -   user geographic location tags;            -   user temporal tags;        -   select the data with the greatest number of matches; and        -   choose a single datum from the remaining data.

381. A processor-accessible medium embodiment for predicting userinterest and situations and supplying information to the user basedthereon, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution.

382. A processor-accessible medium embodiment for predicting userinterest and situations and supplying information to the user basedthereon, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate at a server a plurality of code images scanned by            a user's mobile device and sent to a short code address via            MMS;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution via MMS.

383. A processor-accessible medium embodiment for scoring data based ona user profile and situational information and selecting data from adatabase, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   assign the same initial score to every datum;        -   multiply each datum's score by a subject coefficient for            every match between the datum's subject tag and subject tags            in a user profile;        -   multiply each datum's score by a temporal coefficient for a            match between the datum's temporal tag and a temporal tag in            a user profile;        -   multiply each datum's score by a demographic coefficient for            a match between the datum's demographic tags and demographic            tags in a user profile;        -   select the highest scoring data; and        -   select a single datum from the remaining data.

384. A processor-accessible medium embodiment for coordinating personnelbased on delivered personnel directives, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile to include in a            personnel directive; and        -   send the personnel directive to a user.

385. A processor-accessible medium embodiment for coordinating personnelby serving personnel directives to a mobile device, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   receive at a server messages from a user comprised of user            identification, mobile device identification, a code image            scanned by the mobile device, time of the scan, and user            geographic location at the time of the scan, wherein the            messages are sent to a short code address via MMS;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   enhance the code image scanned by the mobile device;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message and the user profile;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a personnel            directive; and        -   send the personnel directive to the user's mobile device via            MMS.

386. A processor-accessible medium embodiment for receiving personneldirectives, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity information;        -   accumulate user situational information;        -   incorporate user activity information in an activity            message;        -   incorporate user situational information in a situational            message;        -   send the activity message to a server;        -   send the situational message to the server; and        -   receive a personnel directive based on the activity message,            the situational message, and a user profile.

387. A processor-accessible medium embodiment for coordinating personnelbased on delivered personnel directives, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user activity and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user activity and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a personnel            directive;        -   determine a target time and place to send the personnel            directive;        -   incorporate the personnel directive and target time and            place into a message; and        -   send the message for distribution.

388. A processor-accessible medium embodiment for selecting data from adatabase based on user activity information and employment status,comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   filter data in the database by user employment status tags;        -   filter data in the database by activity subject tags;        -   determine which remaining data match:            -   user geographic location tags;            -   user temporal tags;        -   select the data with the greatest number of matches; and        -   choose a single datum from the remaining data.

389. A processor-accessible medium embodiment for selecting data from adatabase based on employment status, subject, and time, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   assign the same initial score to every datum;        -   multiply each datum's score by a status coefficient for            every match between the datum's employment status tag and            employment status tag in a user profile;        -   multiply each datum's score by a subject coefficient for            every match between the datum's subject tag and subject tags            in a user profile;        -   multiply each datum's score by a temporal coefficient for a            match between the datum's temporal tag and a temporal tag in            a user profile;        -   select the highest scoring data; and        -   select a single datum from the remaining data.

390. A processor-accessible medium embodiment for generating proximitynotifications indicating proximities between users, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user situational information;        -   accumulate user association information;        -   analyze the user situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine if a user is in proximity with other users            contained in the user association information; and        -   notify a user of the proximity.

391. A processor-accessible medium embodiment for serving information tousers within a virtual world based on accumulated user information,comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile to include in a            message; and        -   serve the message in a virtual world.

392. A processor-accessible medium embodiment for serving information ina virtual world based on accumulated user information, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   receive messages from a user comprised of user            identification, a user decision within a virtual world, time            of the decision, and user location within the virtual world            at the time of the decision;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message and the user profile;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a reply message;            and        -   serve the reply message within the virtual world.

393. A processor-accessible medium embodiment for receiving informationwithin a virtual world, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   incorporate user activity interest information in an            interest message;        -   incorporate user situational information in a situational            message;        -   send the interest message to a server;        -   send the situational message to the server; and        -   receive a reply that is displayed within a virtual world            based on the interest message, the situational message, and            a user profile.

394. A processor-accessible medium embodiment for serving informationwithin a virtual world based on accumulated user information,comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution within a virtual world.

395. A processor-accessible medium embodiment for selecting data from adatabase based on user virtual world activity interest and situationalinformation, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   filter data in the database by virtual world decision            subject tags;        -   determine which remaining data match:            -   user demographic category tags;            -   user virtual world location tags;            -   user temporal tags;        -   select the data with the greatest number of matches; and        -   choose a single datum from the remaining data.

396. A processor-accessible medium embodiment for selecting data from adatabase based on a virtual world location, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   assign the same initial score to every datum;        -   multiply each datum's score by a subject coefficient for            every match between the datum's subject tag and subject tags            in a user profile;        -   multiply each datum's score by a temporal coefficient for a            match between the datum's temporal tag and a temporal tag in            a user profile;        -   multiply each datum's score by a demographic coefficient for            a match between the datum's demographic tags and demographic            tags in a user profile;        -   multiply each datum's score by a virtual world location            coefficient for every match between the datum's virtual            world location tags and the virtual world location tags in            the user profile;        -   select the highest scoring data; and        -   select a single datum from the remaining data.

397. A processor-accessible medium embodiment for tracking userinformation on the internet and serving information to users basedthereon, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   associate the user activity interest information and user            situational information with a user profile;        -   update the user profile with the associated information in a            database;        -   analyze accumulated information associated with the user            profile;        -   query an information database based on the analysis of the            user profile;        -   select information based on the user profile to include in a            message; and        -   serve the message on a website.

398. A processor-accessible medium embodiment for tracking userinformation on the internet and serving information to a mobile devicebased thereon, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   receive messages from a user comprised of user            identification, mobile device identification, a code scanned            by the mobile device, time of the scan, and user geographic            location at the time of the scan;        -   associate the user identification with a user profile in a            database;        -   update the user profile with the received messages;        -   analyze the accumulated messages in the user profile;        -   determine proper information to serve to the user based on            the received message and the user profile;        -   select the information to serve to the user from a database;        -   incorporate the selected information into a reply message;            and        -   serve the reply message on a website.

399. A processor-accessible medium embodiment for receiving informationon the internet based on accumulated user information, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   incorporate user activity interest information in an            interest message;        -   incorporate user situational information in a situational            message;        -   send the interest message to a server;        -   send the situational message to the server; and        -   receive a reply that is displayed on a website based on the            interest message, the situational message, and a user            profile.

400. A processor-accessible medium embodiment for serving information ona website based on accumulated user information, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   accumulate user activity interest information;        -   accumulate user situational information;        -   analyze the user activity interest information and user            situational information;        -   predict expected user interest and situational information            from the analysis;        -   determine serving information to serve to a user based on            expected user interest and situational information;        -   select the information to serve from a database;        -   incorporate the selected information into a message;        -   determine a target time and place to send a message;        -   incorporate serving information and target time and place            into a message; and        -   send the message for distribution on a website.

401. A processor-accessible medium embodiment for selecting data from adatabase based on user website interest information, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   filter data in the database by website subject tags;            determine which remaining data match:            -   user demographic category tags;            -   user current website tags;            -   user temporal tags;        -   select the data with the greatest number of matches; and        -   choose a single datum from the remaining data.

402. A processor-accessible medium embodiment for selecting data from adatabase based on correlations between a user profile and a datum'swebsite association, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   assign the same initial score to every datum;        -   multiply each datum's score by a subject coefficient for            every match between the datum's subject tag and subject tags            in a user profile;        -   multiply each datum's score by a temporal coefficient for a            match between the datum's temporal tag and a temporal tag in            a user profile;        -   multiply each datum's score by a demographic coefficient for            a match between the datum's demographic tags and demographic            tags in a user profile;        -   multiply each datum's score by a website coefficient for            every match between the datum's website tags and the website            tags in the user profile;        -   select the highest scoring data; and        -   select a single datum from the remaining data.

403. A processor-accessible medium embodiment for processing andresponding to ambiguous content requests, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   receive a scanned code image and a user ID;        -   analyze the scanned code image to determine if the            information encoded therein is fully accessible;        -   select a scanned code disambiguation process to apply to the            scanned code images if the information encoded therein is            not fully accessible;        -   apply the scanned code disambiguation process to the scanned            code image to determine a most likely code;        -   query accumulated user information in a user profile            associated with the user ID;        -   query a content database to extract requested content based            on the most likely code and the accumulated user            information; and        -   send the requested content to a user.

404. A processor-accessible medium embodiment for processing andresponding to ambiguous content requests, comprising:

-   -   processor readable instructions stored in the        processor-accessible medium, wherein the processor readable        instructions are issuable by the processor to:        -   receive a scanned code image, a user ID, wherein the scanned            code image is sent to a short code address via MMS.        -   analyze the scanned code image to determine if the            information encoded therein is fully accessible;        -   select a server-side scanned code disambiguation process to            apply to the scanned code images if the information encoded            therein is not fully accessible, wherein the scanned code            disambiguation process comprises any combination of scanned            code image enhancement and partial decoding;        -   apply the server-side scanned code disambiguation process to            the scanned code image to determine a most likely code;        -   query accumulated user information in a user profile            associated with the user ID;        -   query a content database to extract requested content based            on the most likely code and the accumulated user            information; and        -   send the requested content to a user via MMS.

The entirety of this disclosure (including the Cover Page, Title,Headings, Field, Background, Summary, Brief Description of the Drawings,Detailed Description, Claims, Abstract, Figures, and otherwise) shows byway of illustration various embodiments in which the claimed inventionsmay be practiced. The advantages and features of the disclosure are of arepresentative sample of embodiments only, and are not exhaustive and/orexclusive. They are presented only to assist in understanding and teachthe claimed principles. It should be understood that they are notrepresentative of all claimed inventions. As such, certain aspects ofthe disclosure have not been discussed herein. That alternateembodiments may not have been presented for a specific portion of theinvention or that further undescribed alternate embodiments may beavailable for a portion is not to be considered a disclaimer of thosealternate embodiments. It will be appreciated that many of thoseundescribed embodiments incorporate the same principles of the inventionand others are equivalent. Thus, it is to be understood that otherembodiments may be utilized and functional, logical, organizational,structural and/or topological modifications may be made withoutdeparting from the scope and/or spirit of the disclosure. As such, allexamples and/or embodiments are deemed to be non-limiting throughoutthis disclosure. Also, no inference should be drawn regarding thoseembodiments discussed herein relative to those not discussed hereinother than it is as such for purposes of reducing space and repetition.For instance, it is to be understood that the logical and/or topologicalstructure of any combination of any program components (a componentcollection), other components and/or any present feature sets asdescribed in the figures and/or throughout are not limited to a fixedoperating order and/or arrangement, but rather, any disclosed order isexemplary and all equivalents, regardless of order, are contemplated bythe disclosure. Furthermore, it is to be understood that such featuresare not limited to serial execution, but rather, any number of threads,processes, services, servers, and/or the like that may executeasynchronously, concurrently, in parallel, simultaneously,synchronously, and/or the like are contemplated by the disclosure. Assuch, some of these features may be mutually contradictory, in that theycannot be simultaneously present in a single embodiment. Similarly, somefeatures are applicable to one aspect of the invention, and inapplicableto others. In addition, the disclosure includes other inventions notpresently claimed. Applicant reserves all rights in those presentlyunclaimed inventions including the right to claim such inventions, fileadditional applications, continuations, continuations in part,divisions, and/or the like thereof. As such, it should be understoodthat advantages, embodiments, examples, functional, features, logical,organizational, structural, topological, and/or other aspects of thedisclosure are not to be considered limitations on the disclosure asdefined by the claims or limitations on equivalents to the claims.

1. A processor-implemented method for tracking user information on theinternet and serving information to users based thereon, comprising:accumulating user activity interest information; accumulating usersituational information; associating the user activity interestinformation and user situational information with a user profile;updating the user profile with the associated information in a database;analyzing accumulated information associated with the user profile;querying an information database based on the analysis of the userprofile; selecting information based on the user profile to include in amessage; and serving the message on a website.
 2. The method of claim 1,wherein the information included in the message sent to the user isselected based on a ranking.
 3. The method of claim 1, furthercomprising receiving a relevance rating of the message sent to the user.4. The method of claim 1, further comprising updating an Ad profilebased on the user activity interest information and user situationalinformation.
 5. The method of claim 1, wherein the information includedin the message sent to the user is selected based on ambient conditions.6. The method of claim 1, further, comprising: determining informationto include in a message based on the querying of the informationdatabase.
 7. The method of claim 1, wherein the user situationalinformation includes geographic location.
 8. The method of claim 7,wherein the user situational information includes geographic location ata given time.
 9. The method of claim 1, wherein the user activityinterest information is comprised of a code scanned by a mobile device.10. The method of claim 1, wherein the user activity interestinformation is comprised of an internet link chosen by the user.
 11. Themethod of claim 1, wherein the message sent to the user is sent to amobile device.
 12. A processor-implemented method for tracking userinformation on the internet and serving information to a mobile devicebased thereon, comprising: receiving messages from a user comprised ofuser identification, mobile device identification, a code scanned by themobile device, time of the scan, and user geographic location at thetime of the scan; associating the user identification with a userprofile in a database; updating the user profile with the receivedmessages; analyzing the accumulated messages in the user profile;determining proper information to serve to the user based on thereceived message and the user profile; selecting the information toserve to the user from a database; incorporating the selectedinformation into a reply message; and serving the reply message on awebsite.
 13. An apparatus for tracking user information on the internetand serving information to users based thereon, comprising: a memory; aprocessor disposed in communication with said memory, and configured toissue a plurality of instructions stored in the memory, wherein theinstructions are issuable to: accumulate user activity interestinformation; accumulate user situational information; associate the useractivity interest information and user situational information with auser profile; update the user profile with the associated information ina database; analyze accumulated information associated with the userprofile; query an information database based on the analysis of the userprofile; select information based on the user profile to include in amessage; and serve the message on a website.
 14. A system for trackinguser information on the internet and serving information to users basedthereon, comprising: means to accumulate user activity interestinformation; means to accumulate user situational information; means toassociate the user activity interest information and user situationalinformation with a user profile; means to update the user profile withthe associated information in a database; means to analyze accumulatedinformation associated with the user profile; means to query aninformation database based on the analysis of the user profile; means toselect information based on the user profile to include in a message;and means to serve the message on a website.
 15. A processor-accessiblemedium for tracking user information on the internet and servinginformation to users based thereon, comprising: processor readableinstructions stored in the processor-accessible medium, wherein theprocessor readable instructions are issuable by the processor to:accumulate user activity interest information; accumulate usersituational information; associate the user activity interestinformation and user situational information with a user profile; updatethe user profile with the associated information in a database; analyzeaccumulated information associated with the user profile; query aninformation database based on the analysis of the user profile; selectinformation based on the user profile to include in a message; and servethe message on a website.